古典問題:有一對兔子,從出生後第3個月起每月都生一對兔子,小兔子長到第三個月後每月又生一對兔子,假如兔子都不死,問每月的兔子總數爲多少?(python語言)

# 古典問題:有一對兔子,從出生後第3個月起每月都生一對兔子,小兔子長到第三個月後每月又生一對兔子,假如兔子都不死,問每月的兔子總數爲多少? # 斐波那契數列:0,1,1,2,3,5,8,13,21(後面一個數是前面兩個數的和) # 第1個月 2(1) # 第2個月 2(2) # 第3個月 2(3)+ 2(1) # 第4個月 2(3)+ 2(2) + 2(1) # 第5個月 2(3)+ 2(3) + 2(2) + 2(1) + 2(1) # 第6個月 2(3)+ 2(3) + 2(3) + 2(2) + 2(2) + 2(1) + 2(1)+ 2(1) # 第7個月 2(3)+ 2(3) + 2(3) + 2(3) + 2(3) + 2(2) + 2(2)+ 2(2)+ 2(1)+ 2(1)+ 2(1)+2(1)+ 2(1)

# 月份  1 2 3 4 5 6 7 # 兔子  2 2 4 6 10 16 26 # 除二後 1 1 2 3 5 8 13
while True: try: i = eval(input('請輸入月份:')) if type(i) == int and i <= 24: if i == 1 or i == 2: print("有2只兔子") break
            else: f1 = 1 f2 = 1
                for f in range(3, i+1): f2, f1 =f1, f1 + f2 print('%d' % (f1*2)) break
        else: print('請輸入大於0的正整數') except: print('您輸入的是字符非法,請從新輸入:') continue
相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息
相關文章