奇階幻方的產生規則:
⑴ 將1放在第一行中間一列;
⑵ 從2開始直到n×n止各數依次按下列規則存放:
按 45°方向行走,如向右上
每乙個數存放的行比前乙個數的行數減1,列數加1
⑶ 如果行列範圍超出矩陣範圍,則迴繞。
⑷ 如果按上面規則確定的位置上已有數,或上乙個數是第1行第n列時,
# include# include
using namespace std;
int main(int argc, char** argv) ;
for (int ii=0; iifor (int jj=0; jja[ii][jj]=0;
int r=0,c=n/2;
for (int i=1; i<=n*n; i++)
else if (r<0)
else if (c>=n)
else if (a[r][c] !=0 )
} for (int j=0; j
return 0; }
四階幻方 反幻方c
把1 16的數字填入4x4的方格中,使得行 列以及兩個對角線的和都相等,滿足這樣的特徵時稱為 四階幻方。四階幻方可能有很多方案。如果固定左上角為1,請計算一共有多少種方案。比如 1 2 15 16 12 14 3 5 13 7 10 4 8 11 6 9 以及 1 12 13 8 2 14 7 11...
奇數階幻方
編制奇數階幻方的方法 問題如 http community.csdn.net expert topic 5698 5698866.xml?temp 1421167 簡單描述 給 1 9,9個數,擺放成 3 3 的矩陣,要求每橫排,每豎排,對角線 上 3個數字相加均為15。其中矩陣也可為5 5,7 7...
C語言的N階幻方
關於c語言的n階幻方問題 問題描述 所謂 n 階幻方是 1,2,n2 的方陣排列,且每行 每列和每條對角線上的和都相等。問題舉例 編寫程式列印 5x5 的幻方矩陣 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 現依...