五、题目:输入三个整数x,y,z,请把这三个数由小到大输出。
其实这个题很简单,因为列表可以用sort()命令将输入的数字由小到大排列。所以只需要做一个循环,然后把每次输入的整数放到列表里,最后再用命令排序即可。
l=[0,0,0]
for i in range(3):
l[i]=int(input('整数:'))
l.sort()
print(l)
六、题目:斐波那契数列。
程序分析:斐波那契数列(Fibonacci sequence),又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……。
在数学上,费波那契数列是以递归的方法来定义。
第一次我做的时候只考虑了第一种情况,也就是给定某一个位置,找到数列中对应的位置的数字。对照答案之后发现还给了另一种情况,就是求某个位置之前的序列。
这两种方法都是采用了递归的思路。给定前两个数字0和1,之后的每一项都是前两项之和。
###输入某个位置的数字。
def fib(n):
if n==1:
return 0
elif n==2:
return 1
else:
return fib(n-1)+fib(n-2)
print(fib)
###输入某个位置之前的所有数字
def fibs(n):
if n==1:
return [0]
if n==2:
return [0,1]
else:
fibs=[0,1]
for i in range(3,n+1):
fibs.append(fibs[-1]+fibs[-2])
return fibs