小菜鸟系统学习Python-迭代实现斐波那契和汉诺塔题目

打印 上一主题 下一主题

主题 981|帖子 981|积分 2943

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
斐波那契:
  1. def fbnq(n):
  2.     n1 = 1
  3.     n2 = 1
  4.     n3 = 1
  5.     if n<1:
  6.         print('输入错误,应该大于1')
  7.         return -1
  8.     while (n-2)>0:
  9.         n3 = n2 + n1
  10.         n1 = n2
  11.         n2 = n3
  12.         n-=1
  13.     return n3
  14. a = fbnq(10)
  15. print('共有%d个兔子'%a)
复制代码

汉诺塔:
  1. def hnt(n,x,y,z):
  2.     if n==1:
  3.         print(x,'->',z)
  4.     else:
  5.         hnt(n-1,x,z,y)#将前n-1个从x移到y上
  6.         print(x,'->',z)#将最下面的移动到z上
  7.         hnt(n-1,y,x,z)#将这n-1个移z上
  8. n = int(input('请输入层数:'))
  9. hnt(n,'x','y','z')
复制代码
结果:


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

千千梦丶琪

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表