魔方陣1 奇階魔方陣

2021-08-21 15:16:15 字數 598 閱讀 6548

魔方陣:古代又稱「縱橫圖」,是指組成元素為自然數1、2…n2的平方的n×n的方陣,其中每個元素值都不相等,且每行、每列以及主、副對角線上各n個元素之和都相等。

魔方陣分為奇階魔方陣和偶階魔方陣,偶階魔方陣又分為能被四整除和不能被四整除兩種,今天來給大家講解奇階魔方陣,後續會為大家補充剩餘的魔方陣。

奇階魔方陣的實現步驟:1. 把1放在第一行的中間位置;

3. 如果要放的位置上已經有數了就放在前乙個數的下一行同列;

下面是程式設計實現:

void magicsquare1()

;int currow = 0;

int curcol = row/2;

arr[currow][curcol] = 1;

for(int i=2;i<=row*row;i++)

arr[currow][curcol] = i;

}for(int i= 0;i < row;i++)

printf("\n");}}

int main()

在程式設計過程中,會出現乙個判斷要放數的那個位置上是否已經放過數的問題,我們採取的方法是這樣:將陣列中的所有數都初始化為0,通過判斷陣列中的值是否為0來確定是否已經放過數。

奇階魔方陣

魔方陣分為奇階魔方陣和偶數階魔方陣,偶數階魔方陣又有兩種情況,這裡我們暫時只討論奇階魔方陣 奇階魔方陣的規則如下 假定陣列的行列下標都從0開始,則魔方陣的生成方法為 在第0行中間置1,對從2開始的其餘n2 1個數依次按下列規則存放 1 假定當前數的下標為 i,j 則下乙個數的放置位置為當前位置的右上...

N階魔方陣

寫出程式填寫出n n 魔方陣 的數值。所謂魔方陣是指這樣的方陣,資料是正整數,從1開始,每個遞增1,每個資料不重複出現,它的每一行 每一列和對角線之和均相等 n是奇數 input 3 5 output 8 1 6 3 5 7 4 9 2 17 24 01 08 15 23 05 07 14 16 0...

n階魔方陣

魔方陣 計算規律 1.將1放在第一行中間一列 2.從2開始到nn按如下規律 每乙個數存放的行數比上乙個數的行數減1 每乙個數存放的列數比上乙個數的列數加1 3.當乙個數的行數為1,他的下乙個數行數為n 4.當乙個數的列數為n,他的下乙個數的列數為1,行數減1 5.若按上述規則確定的位置有數字或上乙個...