曾經看到過很多幻方矩陣的生成演算法(後來自己總結了一套方法,不一定適用於所有的情況,只供留戀。
1. 奇數階矩陣的生存。
1)第乙個數字填在第一行的中間位置;
2)在最新插入的右上角插入接下來的數,如果向上超出了界線,在最後一行插入;如果向右超出了界線,在第一列插入;
3)如果右上角已經有數,則在其下方插入下乙個數。
其c語言程式為:
code:
/* 奇數階幻方矩陣生成演算法*/
#define n 7
#include "stdio.h"
void main()
,i,j,i0,j0,k=1;
i=1;
j=(n+1)/2;
a[i][j]=1;
while(k<=n*n)
printf("/n");
//輸出
}
2. 偶階幻方矩陣
雙偶數:四、八、。。。、4k階
《對稱交換法》
1)把自然數依次排成方陣;
2)把幻方劃成4*4小區,每個小區劃對角線;
3)把對角線劃成的數保持不動;
4)沒劃到的數,按幻方中心,以中心對稱對調。
MATLAB 矩陣與幻方矩陣
關於矩陣 在 matlab 環境中,矩陣是由數字組成的矩形陣列。有時,1 1 矩陣 即標量 和只包含一行或一列的矩陣 即向量 會附加特殊含義。matlab 採用其他方法來儲存數值資料和非數值資料,但剛開始時,通常最好將一切內容都視為矩陣。matlab 旨在盡可能簡化運算。其他程式語言一次只能處理乙個...
檢驗並列印幻方矩陣
幻方矩陣是指該矩陣中每一行 每一列 每一對角線上的元素之和都是相等的。從鍵盤輸入乙個5 5的矩陣並將其存入乙個二維整型陣列中,檢驗其是否為幻方矩陣,並將其按指定格式顯示到螢幕上。輸入格式 d 輸出格式 如果是幻方矩陣,螢幕輸出 it is a magic square n 矩陣元素的輸出 4d 換行...
檢驗並列印幻方矩陣
題目內容 幻方矩陣是指該矩陣中每一行 每一列 每一對角線上的元素之和都是相等的。從鍵盤輸入乙個5 5的矩陣並將其存入乙個二維整型陣列中,檢驗其是否為幻方矩陣,並將其按指定格式顯示到螢幕上。輸入格式 d 輸出格式 如果是幻方矩陣,輸出提示資訊 it is a magic square n 矩陣元素的輸...