奇數階幻方構造方法的原理是什麼?

時間 2021-05-05 19:22:37

1樓:小朋友dzy

幻方是指將矩陣是乙個矩陣並且滿足:每行、每列及兩條對角線上的數字之和都相同。

當 為奇數的時候我們可以按照以下方法去構建乙個 的幻方:

首先將 寫在第一行的中間。

之後,按如下方式從小到大依次填寫每個數

若 在第一行但不在最後一列,則將 填在最後一行, 所在列的右一列;

若 在最後一列但不在第一行,則將 填在第一列, 所在行的上一行;

若 在第一行最後一列,則將 填在 的正下方;

若 既不在第一行,也不在最後一列,如果 的右上方還未填數,則將 填在 的右上方,否則將 填在 的正下方。

舉個例子:

時,幻方為:

2樓:童夕

奇數階幻方

n為奇數 (n=3,5,7,9,11……) (n=2*k+1,k=1,2,3,4,5……)

奇數階幻方最經典的填法是羅伯特法(也有人稱之為樓梯法)。填寫方法是這樣:

把1(或最小的數)放在第一行正中; 按以下規律排列剩下的n*n-1個數:

(1)、每乙個數放在前乙個數的右上一格;

(2)、如果這個數所要放的格已經超出了頂行那麼就把它放在底行,仍然要放在右一列;

(3)、如果這個數所要放的格已經超出了最右列那麼就把它放在最左列,仍然要放在上一行;

(4)、如果這個數所要放的格已經超出了頂行且超出了最右列,那麼就把它放在前乙個數的下一行同一列的格內;

(5)、如果這個數所要放的格已經有數填入,處理方法同(4)。

這種寫法總是先向「右上」的方向,象是在爬樓梯。

雙偶階幻方

4階方陣,將數字按順序填寫好之後,只須將除主負對角線外的數字進行中心對調即可;

對於n=4k階幻方,我們先把數字按順序填寫。寫好後,按4*4把它劃分成k*k個方陣。因為n是4的倍數,一定能用4*4的小方陣分割,然後:

1)把每個小4階方陣按照4階方陣的方法進行數字對換。

2)如果是n%8=0的方陣,初步對換後,將k*k的方陣看成乙個元素,將全方陣看成乙個以k*k元素的四階方陣進行數字對換即可。

3)如果是n%8!=0的方陣, 初步兌換後,將4*4的方陣看成乙個元素,將全方陣看成乙個k階方陣,即奇數階方陣,按照向右上移的方法進行填充即可。

單偶階幻方

n為偶數,且不能被4整除 (n=6,10,14,18,22……) (n=4k+2,k=1,2,3,4,5……)

這是三種裡面最複雜的幻方。

(1) 把方陣分為A,B,C,D四個象限,

B AD C

這樣每乙個象限肯定是奇數階。用樓梯法,依次在A象限,D象限,B象限,C象限按奇數階幻方的填法填數。

(2) 在A象限的中間行、中間格開始,按自左向右的方向,標出k格。A象限的其它行則標出最左邊的k格。

(3) 將這些格,和C象限相對位置上的數,互換位置。

(4) 在B象限任一行的中間格,自右向左,標出k-1列。(注:6階幻方由於k-1=0,所以不用再作B、D象限的資料交換)

(5) 將B象限標出的這些數,和D象限相對位置上的數進行交換,就形成幻方。

有興趣的朋友可以試一試。

3樓:王希

#define MAX 100

intd

[MAX

][MAX

];void

dllb

(intl,

intsi

,intsj,

intsn

,intd[

MAX])

elsei=

(i==l

-1)?

0:(i

+1);}

}void

mag_odd

(intl,

intd

[MAX

])void

mag_k

(intl,

intd

[MAX

])void

mag_other

(intl,

intd

[MAX])t

=d[l

/4][l

/4];d

[l/4

][l/4

]=d[

l/4+

l/2][

l/4];

d[l/

4+l/

2][l/

4]=t

;for(i

=0;i

)for(j

=l-l

/4+1

;j

j++)}

void

gen(

intl

,intd[

MAX])

intmain

()puts(""

);}return0;

}好了學英語去了……

怎麼構造幻方,有什麼三階乃至四階及以上n階幻方的合成方法?

畢澤紅 參考了 輕舟逐浪 的解法,增加了動態演示過程,支援演示3階到14階。逐個點動態顯示,交換的點特殊顏色顯示,旁邊有演算法說明 也支援3到99階幻方的自動生成。也支援生成的幻方資料儲存到txt,csv和bmpN階幻方教學演示系統.exe Syncher 參見北航李尚志教授 數學大觀 中第一集,h...

交易系統本質的解析和優勢的構造方法?

陸十四憶白 並不太認同題主的觀點 所謂本質,一定是由因推出果,由果推出因的,應該被稱為因素。換句話說,這個模型可以稱為交易系統因素之一,那麼按照某個因素去設計交易系統,那就是大象如蒲扇,大象如柱子。legal high裡有一句話,不贏就沒有意義如果你是來這裡搬磚的,我覺得這裡的磚還沒有其他地方的磚來...

求二階常係數線性非齊次微分方程的特解的方法有哪些?

給出二階常係數線性非齊次微分方程 1.如果 裡有指數函式,在特解裡也要用相同的指數函式。例 先把方程設齊次,然後解通解 通解 然後解特解 代入原方程,得,特解 最後,2.如果 是多項式,在特解裡要用通用相同次數的多項式。例 通解 然後解特解 代入原方程,得,化簡,比較係數,解 得,特解 最後,3.如...