2018年6月15日 星期五

# Field Farming System


# Field Farming System

Ching-Tang Tseng
Hamilton, New Zealand
16 June 2018
ilikeforth@gmail.com
http://forthfornight.blogspot.com


Before 361 BC, the agricultural policy in whole China were dominated by a so called  # field farming system. According to the Chinese historical record, a former prime minister Shang Yang (商鞅390 - 338 BC) of The Chin Dynasty (秦朝221-207 BC) scrapped such a system. Over those olden societies, land belongs to emperor, without private farm. Farming land in one unit was partitioned into nine square parts, the same as a # (pronouncing: sharp) mark. Surround the center of #, eight family farmers cultivated eight farms. They should cultivate the central farm conjointly as well. After annual harvest session, central farm production belongs to the emperor.  Extra tax of those eight family farmers will be calculated out based on the production of central farm. Tax of the higher harvest family pays more. For example, tax rate will be 10% of the over amount. Tax of the lower harvest family pays nothing.

In spite of # field farming system had been scrapped, before 361 BC were the peaceful era especially applauded by Confucius (孔子551~479 BC). Peaceful level described by Chinese is: people were lived in the days of spring and autumn (春秋時期). No war, no robber king, no killer emperor in that period of time.

# field farming system had ever been operated in a period of peaceful days, in memory of it, this article described a FORTH code able to apply to # field farming system. Regardless the answer of whether this system was nice or not? Obviously, history told us, annual tax rate to be set to “Between 10% to 15%” was a make sense range. It was a worth yearning value. Politician’s behavior makes tax rate higher.

The following FORTH code will be written in Chinese on purpose. This is another kind of application to use FORTH. I don’t like any FORTH system that is disabled in using Chinese. Coding ABC FORTH in any kind of language is possible. Chinese display function was supported by operating system. I did nothing. Code feature shows that I am able to use only 11 BASIC style instructions to solve all kinds of mathematical problem. Their corresponding Chinese names are listing as following:

1. LET  計算
2. FOR  就從
3. TO     做到
4. STEP  間隔
5. NEXT  配合
6. GOTO  跳到
7. IF         假如
8. THEN  前往
9.  RUN   執行
10. PRINT   印出
11. END     結束

You are welcome to trace back to all posted articles in this blog. All BASIC style codes inside adopted these 11 instructions only. That means only one instruction to be used in each line. Executing speed of one BASIC instruction is the same as one FORTH word.

11 special Chinese names were consolidated down after deeply thinking. On the meaning aspect, they are fully matched. On the grammar aspect, they are fully accordant to Chinese language. On the future development aspect, two syllables pronunciation let these instructions apt to distinct in speech identification.

Code and its execution outcomes:

\ 井田制度下的稅收
\ 日期:2018-06-14
\ 作者:曾慶潭於紐西蘭
\ 使用系統: Ubuntu 16.04, Lina64

3 3 浮點矩陣 井田    
3 3 浮點矩陣 稅額
2 個浮點變數 稅率 稅量
2 個整數變數 列號 行號

: 輸入收成
 {{ 井田 ( 1 1 ) = 8230.0 e 0 }} {{ 井田 ( 1 2 ) = 7930.0 e 0 }} {{ 井田 ( 1 3 ) = 6300.0 e 0 }}
 {{ 井田 ( 2 1 ) = 6970.0 e 0 }} {{ 井田 ( 2 2 ) = 7560.0 e 0 }} {{ 井田 ( 2 3 ) = 7900.0 e 0 }}
 {{ 井田 ( 3 1 ) = 8050.0 e 0 }} {{ 井田 ( 3 2 ) = 7800.0 e 0 }} {{ 井田 ( 3 3 ) = 8010.0 e 0 }}
;

: 稅額歸零     
  中文程式
10 就從   列號 = 1 做到 3
20 就從   行號 = 1 做到 3
30 計算   { 稅額 ( 列號 行號 ) = 0.0 e 0 }
40 配合 行號
50 配合 列號
60 執行 輸入收成
70 計算  { 稅率 = 0.1 e 0 }
80 結束
;

: 稅收     
  中文程式
10 執行 稅額歸零
20 就從 列號 = 1 做到 3
30 就從 行號 = 1 做到 3
40 假如 { 井田 ( 列號  行號 ) <= 井田 ( 2 2 ) } 前往 70
50 計算 { 稅額 ( 列號  行號 ) = ( 井田 ( 列號 行號 ) - 井田 ( 2 2 ) ) * 稅率 }
60 跳到 80
70 計算 { 稅額 ( 列號  行號 ) = 0.0 e 0 }
80 計算 { 稅量 = 稅額 ( 列號  行號 ) }
90 印出  " 井田( " ; 列號 ; 行號 ; " )的稅額為: "
100 執行 稅量 f. ." 斤稻穀 " cr
110 配合 行號
120 配合 列號
130 結束 ;

: main 稅收 ;

\S

ching@center:~$ cd lina64
ching@center:~/lina64$ ./f

AMDX86 ciforth 5.2.1
fload field

Loading OK above \S
 OK
main

井田( 1 1 )的稅額為:  67.0斤稻穀

井田( 1 2 )的稅額為:  37.0斤稻穀

井田( 1 3 )的稅額為:  0.0斤稻穀

井田( 2 1 )的稅額為:  0.0斤稻穀

井田( 2 2 )的稅額為:  0.0斤稻穀

井田( 2 3 )的稅額為:  34.0斤稻穀

井田( 3 1 )的稅額為:  49.0斤稻穀

井田( 3 2 )的稅額為:  24.0斤稻穀

井田( 3 3 )的稅額為:  45.0斤稻穀
 OK

My personal testing remarks: Chinese coding ability approved.



反擊不良媒體,個人永久自衛貼文


這是一篇硬遭無禮媒體臉書刪文的訊息,本人不客氣回應臉書,本人不刪就是不刪。

臉書不准貼文,那麼,我就在我的個人網頁上專貼此文永久紀念,給臉書永久的難看。


美國朋友來信標題為:咎由自取!


此份文件係好友來信,發件自美國,此姓名地址欄故意略去。 2017年6月21日 上午4:01
收件者: Ching-Tang Tseng <ilikeforth@gmail.com>
【轉載】
『巴拿馬總統
    記者會...』

記者:總統先生請問為何要與中華民國斷交?

總統:從107年前還是清朝年代時,我們就與中國建立了良好的邦誼,直到現在也並未改變。

記者:未改變?那這次斷交怎麼解釋?

總統:當年我們建交的是中國,就是民主革命成功的中華民國,並不是台灣國。
但是去年中華民國總統來訪時,我們發現他們的這個總統簽字時,署名為「台灣總統」。並不是我們所原先建交的中國(中華民國),所以才跟他們台灣斷交,跟中國政府建交。


Ching-Tang Tseng <ilikeforth@gmail.com>
2017年6月21日 上午7:46
寄給 <姓名略去>


讚!














2018年6月1日 星期五

One set answer of magic square matrix


One set answer of magic square matrix

Ching-Tang Tseng
Hamilton, New Zealand
2 June 2018


兩千六百年前,中國的信史記載,古人這樣表示、研究、應用魔術方陣。



兩千六百年後的今天,中國人這樣子表示、研究、應用魔術方陣。

請注意:貼示資料時,系統會自動消除多出的空格,黏貼後不予人工處理,以示純真。

\ magic square matrics generator
\ Author: Ching-Tang Tseng
\ 20150528, Hamilton, New Zealand

\ ******************************
\ (1).Data structure declared heap

\ Attention! max is a reserved word of mathematical function.
10 integers x y l n q sqd2 q2 nr maxx msum
100 100 (matrix) sq

\ ***********************************
\ (2).Data input heap

: 4n+2init
  basic
\ 10 let n = 6
20 let msum = n * ( n ** 2 + 1 ) / 2
30 let sqd2 = n / 2 :: q2 = sqd2 ** 2
40 let l = ( n - 2 ) / 4
50 let x = sqd2 / 2 + 1 :: y = 1
60 let nr = 1
70 end ;

: 2n+1init
  basic
\ 10 let n = 7
20 let nr = 1
30 let x = n - ( n / 2 )
40 let y = 1
50 let msum = n * ( n ** 2 + 1 ) / 2
50 let maxx = n * n
60 end ;

: 4ninit
  basic
\ 10 let n = 8
20 let msum = n * ( n ** 2 + 1 ) / 2
30 let q = n / 4
40 let nr = 1
50 end ;

\ ********************************
\ (3).Auxiliary instructions heap

: check-columms-and-rows
  basic
10 For y = 1 To n
20 let nr = 0 :: q = 0
30 For x = 1 To n
40 let nr = nr + sq ( x y )
50 let q = q + sq ( y x )
60 Next x
70 If nr <> msum Or q <> msum Then 90
80 goto 100
90 run cr x 4  .r y 4 .r cr -1 abort" Error1: value <> magic sum " cr
100 Next y
110 end ;

: check-diagonals
  basic
10 let nr = 0 :: q = 0
20 For x = 1 To n
30 let nr = nr + sq ( x  x )
40 let q = q + sq ( x  ( n - x + 1 ) )
50 Next x
60 If nr <> msum Or q <> msum Then 80
70 goto 90
80 run cr nr . 3 spaces q . 3 spaces cr -1 abort" Error2: value <> magic sum " cr
90 end ;

: EraseSq
  basic
10 for y = 1 to 100
20 for x = 1 to 100
30 let sq ( x y ) = 0
40 next x
50 next y
60 end ;

: PrintSq
  basic
10 Print " Magic square size : " ; n ; " * " ; n
20 Print " The magic sum = " ; msum
30 run cr
40 For y = 1 To n
50 For x = 1 To n
60 let q = sq ( x y )
70 run q 4 .R
80 Next x
90 run cr
100 Next y
110 end ;

\ *******************************
\ (4).Main code heap

: 2n+1
  basic
10 if sq ( x y ) = 0 then 30
20 goto 100
30 let sq ( x y ) = nr

40 if nr mod n = 0 then 70
50 let x = x + 1
55 let y = y - 1
60 goto 80
70 let y = y + 1

80 let nr = nr + 1

100 if x > n then 120
110 goto 200
120 let x = 1
130 if sq ( x y ) <> 0 then 150
140 goto 200
150 let x = x + 1

200 if y < 1 then 220
210 goto 300
220 let y = n
230 if sq ( x y ) <> 0 then 250
240 goto 300
250 let y = y - 1

300 if nr > maxx then 400
310 goto -10

400 end ;

: 4n
  basic
10 for y = 1 to n
20 for x = q + 1 to n - q
30 let sq ( x y ) = 1
40 next x
50 next y
60 For x = 1 To n
70 For y = q + 1 To n - q
80 let sq ( x y ) = sq ( x y ) xor 1
90 Next y
100 Next x

110 let q = n * n + 1
120 for y = 1 To n
130 for x = 1 To n
140 if sq ( x y ) = 0 Then 170
150 let sq ( x y ) = nr
160 goto 180
170 let sq ( x y ) = q - nr
180 let nr = nr + 1
190 Next x
200 Next y
210 end ;

\ Attention! in ABC FORTH, index can not be an algebraic expression
: x+sqd2 x sqd2 + ;
: y+sqd2 y sqd2 + ;
: l+1 l 1+ ;

: 4n+2
  basic
10 if sq ( x y ) = 0 then 30
20 goto 130
30 let sq ( x y ) = nr
40 let sq ( x+sqd2 y+sqd2 ) = nr + q2
50 let sq ( x+sqd2 y ) = nr + q2 * 2
60 let sq ( x y+sqd2 ) = nr + q2 * 3

70 if nr mod sqd2 = 0 then 90
80 goto 110
90 let y = y + 1
100 goto 120
110 let x = x + 1 :: y = y - 1
120 let nr = nr + 1

130 if x > sqd2 then 150
140 goto 200
150 let x = 1
160 if sq ( x y ) <> 0 then 180
170 goto 200
180 let x = x + 1

200 if y < 1 then 220
210 goto 260
220 let y = sqd2
230 if sq ( x y ) <> 0 then 250
240 goto 260
250 let y = y - 1

260 if nr > q2 then 300
270 goto -10

300 for y = 1 to sqd2
310 for x = 1 to l
320 let q = sq ( x y )
330 let sq ( x y ) = sq ( x y+sqd2 )
340 let sq ( x y+sqd2 ) = q
350 next x
360 next y

400 let y = ( sqd2 / 2 ) + 1
410 let q = sq ( 1 y )
420 let sq ( 1 y ) = sq ( 1 y+sqd2 )
430 let sq ( 1 y+sqd2 ) = q
440 let q = sq ( l+1 y )
450 let sq ( l+1 y ) = sq ( l+1 y+sqd2 )
460 let sq ( l+1 y+sqd2 ) = q

500 for y = 1 to sqd2
510 for x = n - l + 2 to n
520 let q = sq ( x y )
530 let sq ( x y ) = sq ( x y+sqd2 )
540 let sq ( x y+sqd2 ) = q
550 next x
560 next y

1000 end ;

\ **********************
\ (5).Manipulation heap

: magics ( n -- )
  [[ n ]] !
  EraseSq
  basic
10 if n mod 2 = 1 then 100
20 if n mod 4 = 2 then 200
30 goto 300

100 run 2n+1Init
110 run 2n+1
120 goto 400

200 run 4n+2Init
210 run 4n+2
220 goto 400

300 run 4nInit
310 run 4n

400 run PrintSq

500 run check-columms-and-rows
510 run check-diagonals

1000 end ;

: main ( -- )
  21 3
  do i magics loop ;

main

\ ********** the end ***************
 
執行結果:

Magic Square Matrix size : 3 * 3
The magic sum = 15
8 1 6
3 5 7
4 9 2

Magic Square Matrix size : 4 * 4
The magic sum = 34
16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1

Magic Square Matrix size : 5 * 5
The magic sum = 65
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

Magic Square Matrix size : 6 * 6
The magic sum = 111
35 1 6 26 19 24
3 32 7 21 23 25
31 9 2 22 27 20
8 28 33 17 10 15
30 5 34 12 14 16
4 36 29 13 18 11

Magic Square Matrix size : 7 * 7
The magic sum = 175
30 39 48 1 10 19 28
38 47 7 9 18 27 29
46 6 8 17 26 35 37
5 14 16 25 34 36 45
13 15 24 33 42 44 4
21 23 32 41 43 3 12
22 31 40 49 2 11 20

Magic Square Matrix size : 8 * 8
The magic sum = 260
64 63 3 4 5 6 58 57
56 55 11 12 13 14 50 49
17 18 46 45 44 43 23 24
25 26 38 37 36 35 31 32
33 34 30 29 28 27 39 40
41 42 22 21 20 19 47 48
16 15 51 52 53 54 10 9
8 7 59 60 61 62 2 1

Magic Square Matrix size : 9 * 9
The magic sum = 369
47 58 69 80 1 12 23 34 45
57 68 79 9 11 22 33 44 46
67 78 8 10 21 32 43 54 56
77 7 18 20 31 42 53 55 66
6 17 19 30 41 52 63 65 76
16 27 29 40 51 62 64 75 5
26 28 39 50 61 72 74 4 15
36 38 49 60 71 73 3 14 25
37 48 59 70 81 2 13 24 35

Magic Square Matrix size : 10 * 10
The magic sum = 505
92 99 1 8 15 67 74 51 58 40
98 80 7 14 16 73 55 57 64 41
4 81 88 20 22 54 56 63 70 47
85 87 19 21 3 60 62 69 71 28
86 93 25 2 9 61 68 75 52 34
17 24 76 83 90 42 49 26 33 65
23 5 82 89 91 48 30 32 39 66
79 6 13 95 97 29 31 38 45 72
10 12 94 96 78 35 37 44 46 53
11 18 100 77 84 36 43 50 27 59

Magic Square Matrix size : 11 * 11
The magic sum = 671
68 81 94 107 120 1 14 27 40 53 66
80 93 106 119 11 13 26 39 52 65 67
92 105 118 10 12 25 38 51 64 77 79
104 117 9 22 24 37 50 63 76 78 91
116 8 21 23 36 49 62 75 88 90 103
7 20 33 35 48 61 74 87 89 102 115
19 32 34 47 60 73 86 99 101 114 6
31 44 46 59 72 85 98 100 113 5 18
43 45 58 71 84 97 110 112 4 17 30
55 57 70 83 96 109 111 3 16 29 42
56 69 82 95 108 121 2 15 28 41 54

Magic Square Matrix size : 12 * 12
The magic sum = 870
144 143 142 4 5 6 7 8 9 135 134 133
132 131 130 16 17 18 19 20 21 123 122 121
120 119 118 28 29 30 31 32 33 111 110 109
37 38 39 105 104 103 102 101 100 46 47 48
49 50 51 93 92 91 90 89 88 58 59 60
61 62 63 81 80 79 78 77 76 70 71 72
73 74 75 69 68 67 66 65 64 82 83 84
85 86 87 57 56 55 54 53 52 94 95 96
97 98 99 45 44 43 42 41 40 106 107 108
36 35 34 112 113 114 115 116 117 27 26 25
24 23 22 124 125 126 127 128 129 15 14 13
12 11 10 136 137 138 139 140 141 3 2 1

Magic Square Matrix size : 13 * 13
The magic sum = 1105
93 108 123 138 153 168 1 16 31 46 61 76 91
107 122 137 152 167 13 15 30 45 60 75 90 92
121 136 151 166 12 14 29 44 59 74 89 104 106
135 150 165 11 26 28 43 58 73 88 103 105 120
149 164 10 25 27 42 57 72 87 102 117 119 134
163 9 24 39 41 56 71 86 101 116 118 133 148
8 23 38 40 55 70 85 100 115 130 132 147 162
22 37 52 54 69 84 99 114 129 131 146 161 7
36 51 53 68 83 98 113 128 143 145 160 6 21
50 65 67 82 97 112 127 142 144 159 5 20 35
64 66 81 96 111 126 141 156 158 4 19 34 49
78 80 95 110 125 140 155 157 3 18 33 48 63
79 94 109 124 139 154 169 2 17 32 47 62 77

Magic Square Matrix size : 14 * 14
The magic sum = 1379
177 186 195 1 10 19 28 128 137 146 99 108 68 77
185 194 154 9 18 27 29 136 145 105 107 116 76 78
193 153 155 17 26 35 37 144 104 106 115 124 84 86
5 161 163 172 34 36 45 103 112 114 123 132 85 94
160 162 171 33 42 44 4 111 113 122 131 140 93 53
168 170 179 41 43 3 12 119 121 130 139 141 52 61
169 178 187 49 2 11 20 120 129 138 147 100 60 69
30 39 48 148 157 166 175 79 88 97 50 59 117 126
38 47 7 156 165 174 176 87 96 56 58 67 125 127
46 6 8 164 173 182 184 95 55 57 66 75 133 135
152 14 16 25 181 183 192 54 63 65 74 83 134 143
13 15 24 180 189 191 151 62 64 73 82 91 142 102
21 23 32 188 190 150 159 70 72 81 90 92 101 110
22 31 40 196 149 158 167 71 80 89 98 51 109 118

Magic Square Matrix size : 15 * 15
The magic sum = 1695
122 139 156 173 190 207 224 1 18 35 52 69 86 103 120
138 155 172 189 206 223 15 17 34 51 68 85 102 119 121
154 171 188 205 222 14 16 33 50 67 84 101 118 135 137
170 187 204 221 13 30 32 49 66 83 100 117 134 136 153
186 203 220 12 29 31 48 65 82 99 116 133 150 152 169
202 219 11 28 45 47 64 81 98 115 132 149 151 168 185
218 10 27 44 46 63 80 97 114 131 148 165 167 184 201
9 26 43 60 62 79 96 113 130 147 164 166 183 200 217
25 42 59 61 78 95 112 129 146 163 180 182 199 216 8
41 58 75 77 94 111 128 145 162 179 181 198 215 7 24
57 74 76 93 110 127 144 161 178 195 197 214 6 23 40
73 90 92 109 126 143 160 177 194 196 213 5 22 39 56
89 91 108 125 142 159 176 193 210 212 4 21 38 55 72
105 107 124 141 158 175 192 209 211 3 20 37 54 71 88
106 123 140 157 174 191 208 225 2 19 36 53 70 87 104

Magic Square Matrix size : 16 * 16
The magic sum = 2056
256 255 254 253 5 6 7 8 9 10 11 12 244 243 242 241
240 239 238 237 21 22 23 24 25 26 27 28 228 227 226 225
224 223 222 221 37 38 39 40 41 42 43 44 212 211 210 209
208 207 206 205 53 54 55 56 57 58 59 60 196 195 194 193
65 66 67 68 188 187 186 185 184 183 182 181 77 78 79 80
81 82 83 84 172 171 170 169 168 167 166 165 93 94 95 96
97 98 99 100 156 155 154 153 152 151 150 149 109 110 111 112
113 114 115 116 140 139 138 137 136 135 134 133 125 126 127 128
129 130 131 132 124 123 122 121 120 119 118 117 141 142 143 144
145 146 147 148 108 107 106 105 104 103 102 101 157 158 159 160
161 162 163 164 92 91 90 89 88 87 86 85 173 174 175 176
177 178 179 180 76 75 74 73 72 71 70 69 189 190 191 192
64 63 62 61 197 198 199 200 201 202 203 204 52 51 50 49
48 47 46 45 213 214 215 216 217 218 219 220 36 35 34 33
32 31 30 29 229 230 231 232 233 234 235 236 20 19 18 17
16 15 14 13 245 246 247 248 249 250 251 252 4 3 2 1

Magic Square Matrix size : 17 * 17
The magic sum = 2465
155 174 193 212 231 250 269 288 1 20 39 58 77 96 115 134 153
173 192 211 230 249 268 287 17 19 38 57 76 95 114 133 152 154
191 210 229 248 267 286 16 18 37 56 75 94 113 132 151 170 172
209 228 247 266 285 15 34 36 55 74 93 112 131 150 169 171 190
227 246 265 284 14 33 35 54 73 92 111 130 149 168 187 189 208
245 264 283 13 32 51 53 72 91 110 129 148 167 186 188 207 226
263 282 12 31 50 52 71 90 109 128 147 166 185 204 206 225 244
281 11 30 49 68 70 89 108 127 146 165 184 203 205 224 243 262
10 29 48 67 69 88 107 126 145 164 183 202 221 223 242 261 280
28 47 66 85 87 106 125 144 163 182 201 220 222 241 260 279 9
46 65 84 86 105 124 143 162 181 200 219 238 240 259 278 8 27
64 83 102 104 123 142 161 180 199 218 237 239 258 277 7 26 45
82 101 103 122 141 160 179 198 217 236 255 257 276 6 25 44 63
100 119 121 140 159 178 197 216 235 254 256 275 5 24 43 62 81
118 120 139 158 177 196 215 234 253 272 274 4 23 42 61 80 99
136 138 157 176 195 214 233 252 271 273 3 22 41 60 79 98 117
137 156 175 194 213 232 251 270 289 2 21 40 59 78 97 116 135

Magic Square Matrix size : 18 * 18
The magic sum = 2925
290 301 312 323 1 12 23 34 45 209 220 231 242 163 174 104 115 126
300 311 322 252 11 22 33 44 46 219 230 241 171 173 184 114 125 127
310 321 251 253 21 32 43 54 56 229 240 170 172 183 194 124 135 137
320 250 261 263 31 42 53 55 66 239 169 180 182 193 204 134 136 147
6 260 262 273 284 52 63 65 76 168 179 181 192 203 214 144 146 157
259 270 272 283 51 62 64 75 5 178 189 191 202 213 224 145 156 86
269 271 282 293 61 72 74 4 15 188 190 201 212 223 234 155 85 96
279 281 292 303 71 73 3 14 25 198 200 211 222 233 235 84 95 106
280 291 302 313 81 2 13 24 35 199 210 221 232 243 164 94 105 116
47 58 69 80 244 255 266 277 288 128 139 150 161 82 93 185 196 207
57 68 79 9 254 265 276 287 289 138 149 160 90 92 103 195 206 208
67 78 8 10 264 275 286 297 299 148 159 89 91 102 113 205 216 218
77 7 18 20 274 285 296 298 309 158 88 99 101 112 123 215 217 228
249 17 19 30 41 295 306 308 319 87 98 100 111 122 133 225 227 238
16 27 29 40 294 305 307 318 248 97 108 110 121 132 143 226 237 167
26 28 39 50 304 315 317 247 258 107 109 120 131 142 153 236 166 177
36 38 49 60 314 316 246 257 268 117 119 130 141 152 154 165 176 187
37 48 59 70 324 245 256 267 278 118 129 140 151 162 83 175 186 197

Magic Square Matrix size : 19 * 19
The magic sum = 3439
192 213 234 255 276 297 318 339 360 1 22 43 64 85 106 127 148 169 190
212 233 254 275 296 317 338 359 19 21 42 63 84 105 126 147 168 189 191
232 253 274 295 316 337 358 18 20 41 62 83 104 125 146 167 188 209 211
252 273 294 315 336 357 17 38 40 61 82 103 124 145 166 187 208 210 231
272 293 314 335 356 16 37 39 60 81 102 123 144 165 186 207 228 230 251
292 313 334 355 15 36 57 59 80 101 122 143 164 185 206 227 229 250 271
312 333 354 14 35 56 58 79 100 121 142 163 184 205 226 247 249 270 291
332 353 13 34 55 76 78 99 120 141 162 183 204 225 246 248 269 290 311
352 12 33 54 75 77 98 119 140 161 182 203 224 245 266 268 289 310 331
11 32 53 74 95 97 118 139 160 181 202 223 244 265 267 288 309 330 351
31 52 73 94 96 117 138 159 180 201 222 243 264 285 287 308 329 350 10
51 72 93 114 116 137 158 179 200 221 242 263 284 286 307 328 349 9 30
71 92 113 115 136 157 178 199 220 241 262 283 304 306 327 348 8 29 50
91 112 133 135 156 177 198 219 240 261 282 303 305 326 347 7 28 49 70
111 132 134 155 176 197 218 239 260 281 302 323 325 346 6 27 48 69 90
131 152 154 175 196 217 238 259 280 301 322 324 345 5 26 47 68 89 110
151 153 174 195 216 237 258 279 300 321 342 344 4 25 46 67 88 109 130
171 173 194 215 236 257 278 299 320 341 343 3 24 45 66 87 108 129 150
172 193 214 235 256 277 298 319 340 361 2 23 44 65 86 107 128 149 170

Magic Square Matrix size : 20 * 20
The magic sum = 4010
400 399 398 397 396 6 7 8 9 10 11 12 13 14 15 385 384 383 382 381
380 379 378 377 376 26 27 28 29 30 31 32 33 34 35 365 364 363 362 361
360 359 358 357 356 46 47 48 49 50 51 52 53 54 55 345 344 343 342 341
340 339 338 337 336 66 67 68 69 70 71 72 73 74 75 325 324 323 322 321
320 319 318 317 316 86 87 88 89 90 91 92 93 94 95 305 304 303 302 301
101 102 103 104 105 295 294 293 292 291 290 289 288 287 286 116 117 118 119 120
121 122 123 124 125 275 274 273 272 271 270 269 268 267 266 136 137 138 139 140
141 142 143 144 145 255 254 253 252 251 250 249 248 247 246 156 157 158 159 160
161 162 163 164 165 235 234 233 232 231 230 229 228 227 226 176 177 178 179 180
181 182 183 184 185 215 214 213 212 211 210 209 208 207 206 196 197 198 199 200
201 202 203 204 205 195 194 193 192 191 190 189 188 187 186 216 217 218 219 220
221 222 223 224 225 175 174 173 172 171 170 169 168 167 166 236 237 238 239 240
241 242 243 244 245 155 154 153 152 151 150 149 148 147 146 256 257 258 259 260
261 262 263 264 265 135 134 133 132 131 130 129 128 127 126 276 277 278 279 280
281 282 283 284 285 115 114 113 112 111 110 109 108 107 106 296 297 298 299 300
100 99 98 97 96 306 307 308 309 310 311 312 313 314 315 85 84 83 82 81
80 79 78 77 76 326 327 328 329 330 331 332 333 334 335 65 64 63 62 61
60 59 58 57 56 346 347 348 349 350 351 352 353 354 355 45 44 43 42 41
40 39 38 37 36 366 367 368 369 370 371 372 373 374 375 25 24 23 22 21
20 19 18 17 16 386 387 388 389 390 391 392 393 394 395 5 4 3 2 1
OK