## 【28】Numberspiraldiagonals螺旋數陣的對角線 由1開始,按順時針方順延伸得到如下5×5的螺旋數列: ![](https://i.imgur.com/AxrUtmh.png) 可以算出對角線上所有數位的和為101。 ### 那麼用如上構造方法的1001×1001的螺旋數列的對角線上的所有數字的和是……? #### 參考方法一:將對角線分成4個部分,寫成4個函式 ![](https://i.imgur.com/ivxCpSg.png) ① 1,9,25,49,81 ② 1,7,21,43,73 ③ 1,5,17,37,65 ④ 1,3,13,31,57 ![](https://i.imgur.com/dWt2i4b.png) 第一個函式寫法不只一種, 也可以寫成s=(2*i-1)**2 請自行發揮 ### 【練習1】請寫出第2個函式x2(),滿足上圖②路線, 要求輸出1 7 21 43 73 111 157 211 273 343 …… ### 【練習2】請寫出第3個函式x3(),滿足上圖③路線, 要求輸出1 5 17 37 65 101 145 197 257 325 …… ### 【練習3】請寫出第4個函式x4(),滿足上圖④路線, 要求輸出1 3 13 31 57 91 133 183 241 307 …… 1001×1001方陣剛好對映到0~500 i=1時,x1(1)=9、x2(1)=7、x3(1)=5、x4(1)=3 i=2時,x1(2)=25、x2(2)=21、x3(2)=17、x4(2)=13 …… i=500,…… _______________________________________________(+   #### 參考方法二:這是另一種想法(不必分4個函式) ![](https://i.imgur.com/ClEuI1s.png) 第0回合 1 第1回合 3+5+7+9 第2回合 13+17+21+25 …… 第500回合…… 後面這個做法程式比較短!青菜蘿蔔各有喜好!