内容正文:
5.2迭代思想
3.迭代算法的常见用法
(3)辗转相除法
利用辗转相除法可以求出整数m,n的最大公约数,是一个反复迭代的过程。
思考:(1)确定迭代变量
m,n,r
(2)建立迭代关系式
r=
m=
n=
m % n
n
r
(3)迭代终止条件
r=0
3.迭代算法的常见用法
(3)辗转相除法
使用辗转相除法求最大公约数的Python程序如下,请在划线处填入合适的代码。
m=int(input(“请输入正整数m:”))
n=int(input(“请输入正整数n:”))
r=m % n
while r!=0:
print(“最大公约数为”, )
m=n
n=r
r=m % n
n
m%n
n
r
3.迭代算法的常见用法
(4)进制转换
利用除2取余法将十进制数转化成二进制数。
思考:(1)确定迭代变量
n,r
(2)建立迭代关系式
r=
s=
n=
n%2
str(r)+s
n//2
(3)迭代终止条件
n=0
3.迭代算法的常见用法
(4)进制转换
将十进制数n转化成二进制数的Python程序如下,请在划线处填入合适的代码。
n=int(input(“请输入正整数n:”))
s=“”
while :
print(“二进制数为”,s)
r=n%2
s=str(r)+s
n=n//2
n!=0
B
1月
2月
3月
4月
5月
斐波那契兔子问题
这个问题是公元前13世纪意大利数学家斐波那契的名著《算盘书》里的问题。假定每对大兔每月能生产一对小兔,而每对小兔生长两个月就成为大兔.图中每个色块表示一对兔子,其中绿色色块表示新生兔子。
每月新生兔子的对数为:1,1,2,3,5……从第三个月起,当月新生兔子数为前两月新生兔子数之和。这个数列在数学上被称做“斐波那契数列”。
C
利用迭代思想设计一个函数,用来计算一个数的阶乘
1!=1
2!=1*2
3!=1*2*3
4!=1*2*3*4
5!=1*2*3*4*5
……..
n!=1*2*3*4*5*….*n