1到9的數字填充后每行每列的數字相加都等於15的九宮格算法


 1 /// <summary>
 2         /// 九宮格算法
 3         /// </summary>
 4         public void NineTable()
 5         {
 6             //創建一個三階方陣
 7             int[,] arr = new int[3, 3];
 8             //第3行的行下標
 9             int a = 2;
10             //第2行的行下標
11             int b = 3 / 2;
12             //給數組賦值
13             for (int i = 1; i <= 9; i++)
14             {
15                 arr[a++, b++] = i;
16 
17                 //如果i是3的倍數
18                 if (i % 3 == 0)
19                 {
20                     a = a - 2;
21                     b = b - 1;
22                 }
23                 else //如果i不是3的倍數
24                 {
25                     a = a % 3;
26                     b = b % 3;
27                 }
28             }
29 
30             StringBuilder sb = new StringBuilder();
31             //遍歷輸出九宮格
32             for (int i = 0; i < 3; i++)
33             {
34                 for (int j = 0; j < 3; j++)
35                 {
36                     sb.Append(arr[i, j].ToString() + " ");
37                 }
38                 sb.Append("<br/>");
39             }
40             lbNineTable.Text = "輸出九宮格:<br/>" + sb.ToString().Trim();
41         }
View Code

 

程序運行的結果如下所示:

輸出九宮格:
4 9 2
3 5 7
8 1 6


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM