python基础教程100例题: 5&6

五、题目:输入三个整数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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值