pascal 奇數階幻方

時間 2025-03-03 16:10:05

1樓:jackson王子

varx,y,z,m,n,i,j:integer;

a:array[1..1000,1..1000] of integer;

beginreadln(m);

if m mod 2=1 then

beginn:=(m div 2)+1;

for i:=1 to m do

beginfor j:=1 to m doa[i,j]:=0;

end;i:=1+1;j:=n+1;y:=1;

for z:=1 to m*m do

begini:=i-1;j:=j-1;

if i=0 then

begini:=m;

end;if j=0 then

beginj:=m;

end;if a[i,j]<>0 thenbegini:=i+2;

j:=j+1;

if i>m then

i:=i-m;

if j>m then

j:=j-m;

end;a[i,j]:=y;

y:=y+1;

end;end;

for i:=1 to m do

beginfor j:=1 to m dowrite(a[i,j]:5);

writeln;

end;readln;

end.我試過了,可以的。(但只限於邊長為奇數)

2樓:網友

告訴你解題思想吧!

1總是放在最後一行的中間乙個數。

接下來每個數都是在上乙個數的斜上方(如果那個位置有數則放在前乙個數的上方)

不懂的話用九宮格來實驗吧。

奇數階幻方 的填法

3樓:網友

奇數階幻方的填法:(絕對正確)

先寫1,把1寫在第1行最中間的那格,再寫2,把2寫在1的右上方,[如果時在格仔上方出格了就變到同列的最下方,(如果是在右邊出格了接寫在同行的最左方)]

3寫在2的右上方,4寫在3的右上方,如此類推,寫完為止。

如果再往右上角寫時,右上角已經右數字了,就向下寫一格,之後再往右上角寫。

後面如此類推。

4樓:網友

說不清楚,你找本書看看。

在pascal中,輸入n,打出n階幻方的任意一種排列.

5樓:天涯冰雪蘭花

簡單,你如果只要一種解而非所有解,那麼用回溯法吧,奇偶階都能很快得出答案。如果要搜盡全部解,4階的,我耗費了幾分鐘,而5階電腦就受不了,6階的估計超級計算機也無能為力,呵呵。

6樓:網友

幻方有專門的構造方法,樓上的回溯法是不可行的,我也寫過幻方的程式(c++)10000階以內時間都不超過1s演算法在這裡。

能否用pascal求出魔方的解

7樓:

雖然還沒試過。

不過應該是不可能的。

其次魔方如何還原自己學就可以啦。

不用程式設計。如果是魔板就可以用程式設計實現。

學魔方去這裡:很不錯。

8樓:更快更高

上面那位很好但太囉嗦了看看我這個吧。

把第一層的顏色玩一致,並讓第一層的邊上的顏色和魔方4側邊的顏色一致。

第二層公式:上順—右順—上逆—右逆—上逆—前逆—上順—前順。

第三層公式(起十字):右逆—上逆—前逆—上順—前順—右順。

第三層公式(四角塊):右順—上順—右逆—上順—上順180°—右順—右逆。

第三層公式(還四角):右順—上順—右逆—上逆—右逆—前順—右順18°—上逆—右逆—上逆—右順—上順—右逆—前逆。

第三層公式(還中心):右順—上逆—右順—上順—右順—上順—右順—下逆—右逆—上逆—右180°

注!:順:順時針轉九十度。

逆:逆時針轉九十度。

9樓:雷伊

我已經編好了 用了n個過程……已去除錯過……良好,有時會超時 ……雖說我會玩魔方 七階都會……

10樓:黑崎綾

魔方技巧只能實踐 不可言傳。

說那麼多也是不會懂的。

真的自己實踐吧。

我就把6面拼好了多動腦。

還原魔方程式演算法,最後是pascal的

11樓:

我認為一步之內的擴充套件規則應該遠遠不止6種,至少還有中間一層的呢。另外,26步之內是不知道向左擰還是向右的。所以。極有可能會搜的飄飄欲仙。

另外我覺得應該可以加點優化。弄個啟發,啟發函式就是和目標的塊數差。或者弄個random..拼點人品也好。

12樓:網友

首先要明確魔方有多少種移動方法~~~

拿一面面對著你~~那麼只有這樣6種~~旋轉正面,背面,右面,左面,上面,下面,其中都是指順時針旋轉90°,這樣一來,180°和270°,也可以用這些方法複合出來,然後就搜尋。。。一定要暴力。。。沒辦法的事。。。

另外,使用廣搜比較好,因為有乙個數學家證明了,任何魔方都可以在26步內還原~~那麼在最壞的情況下,你只要嘗試6^26種可能。。。當然,這是最壞情況下。。。如果rp好,還是很快的。。。

13樓:網友

樓上怎麼涉及到rp問題了~~~暴汗~~~

三階幻方的規律,三階幻方都有哪些規律?

棟棟拐 merzirac法生成奇階幻方 merzirac法的口訣 1 居上行正 依次斜填切莫忘,上出框界往下寫,右出框時左邊放,重複便在下格填,出角重複一個樣。用merziral法生成的任何階的奇幻方。下面 如圖 是用merziral法生成1 9的3階幻方 即九宮格 8 1 6 3 5 7 4 9 ...

設A為奇數階正交矩陣,且A 1,證明 EA為不可逆矩陣

堅谷蕊常易 證明 a是奇數階正交矩陣 則a at e at為a的轉置 而對於 det e a 則代入a at e det e a det a at a det a det at e det at e det a e t det a e 因為是奇數階正交矩陣。設為n,所以 det a e 1 n de...

線性代數題目 設三階方陣A(aij ,B aij j ,若A0,且A的伴隨矩陣

解 a11 1 a12 2 a13 3 b a21 1 a22 2 a23 3 a31 1 a32 2 a33 3 將這個行列式拆成2 個行列式的和,只有4個不為0 還有4個有對應列成比例,所以為0 a11 a12 a13 1 a12 a13 a11 2 a13 a11 a22 3 a22 a21 ...