Re: [請益] 請教一個小小的問題

作者: Neisseria (Neisseria)   2014-01-28 09:19:17
※ 引述《dagood (想回高雄了~~)》之銘言:
: 不好意思 我是使用maple套裝軟體
不好意思 因為 maple 我不熟
不知道 maple 是否可符合以下運算
: 給定前三個數 2,0,1
: 之後的每一個數都是前三個數相加除以10的餘數
: 且我要設定i 到重複出現2,0,1 停止
: a[1]:=2
: a[2]:=0
: a[3]:=1
: for i from 1 to 100 do
: a[i+3]:=modp(a[i]+a[i+1]+a[i+2],10)
: end do;
: 我想要把這個迴圈的 from 1 to 100
: 改到 from 1 到 2,0,1 連續三數出現為止 我的while要怎麼寫呢
: 或是有其他寫法...thx
這裡是用 Python 因為 Python 支援大數運算
想看完整的程式碼請到 Pastebin http://pastebin.com/Jc2NiAz4
# while 裡的條件判斷式比較長 這裡分開在寫在一個函數裡
def is_defined_reminder(array, i):
return array[i - 2] % 10 == 2 and \
array[i - 1] % 10 == 0 and \
array[i] % 10 == 1
# 不符條件時 就將 array 加入一項 然後繼續跑 while
while(not is_defined_reminder(array, i)):
array.append(array[i - 2] + array[i - 1] + array[i])
i += 1
# 印出 i(index) 只是想看迴圈跑了幾次 可以不用印 i
print i, array[i]

Links booklink

Contact Us: admin [ a t ] ucptt.com