使用循環解決斐波那契數列Fibonacci sequence
阿新 • • 發佈:2017-08-07
log class 兔子 斐波那契數 知識 多少 oba enc 傳遞
1 # encoding:utf-8 2 ‘‘‘ 3 Created on 2017年8月7日 4 題目:古典問題:有一對兔子,從出生後第3個月起每個月都生一對兔子, 5 小兔子長到第三個月後每個月又生一對兔子, 6 假如兔子都不死,問每個月的兔子總數為多少? 7 知識鏈接: 8 1、在使用函數傳遞變量時不要同全局變量的名稱一樣 9 2、全局變量在函數中使用時,需要用 global聲明 10 @author: wangtaoyuan 11 ‘‘‘ 12 new = 1#剛出生的小兔子對數 13 one = 0#一個月大的兔子對數 14 old = 0#兩個月及以上的兔子,成熟兔子對數15 i = 0 16 m = input(‘please input a inter of months:‘) 17 print ‘ ‘,old + new + one#初始兔子的總數 18 def growup( newl, onel, oldl): 19 global new, old, one, two 20 old = oldl + onel#1個月大的兔子成長為成熟兔子 21 print ‘old:‘,old 22 one = newl #剛出生的兔子成長為一個月大的兔子 23 print‘one:‘, one 24 new = 0 25 def breed(oldl): 26 global new 27 new = old #一對成熟兔子可以下一對剛出生的小兔子 28 print ‘new:‘, new 29 while i < m: 30 print i+1,‘個月後:‘ 31 growup(new, one, old)#成長1個月 32 breed(old)#成熟的兔子生小兔子 33 i += 1 34 35 print ‘ ‘,old + new + one#兔子的總數
使用循環解決斐波那契數列Fibonacci sequence