古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

每个月的兔子数量

1:2
2:2
3:4 2+2
4:6 2+2+2
5:10 2+2+2+2+2
6:16 6+6+4
7:26 10+10+6

第一个月和第二个月兔子不繁殖

第三个月,两个兔子繁殖两个兔子,共四个

第四个月,两个兔子继续繁殖两个兔子,小兔子不繁殖;共6个

以此类推

2,2,4,6,10,16,26

这个数量刚好是斐波那契数列 的两倍

源代码:

#!/usr/bin/python
# encoding=utf-8
# -*- coding: UTF-8 -*- # 斐波那契数列 兔子生兔子问题:
"""
l = []
l.append(1)
l.append(1)
while(1):
k = len(l)
m = (l[k-2]+l[k-1])
print(m)
l.append(m)
print("====",l) """ # 兔子的数量 l = []
l.append(2)
l.append(2)
while(1):
k = len(l)
m = (l[k-2]+l[k-1])
l.append(m)
print("====",l)

输出结果:

原题解法:

我认为原题解法,答案不对;

  

————————(我是分割线)————————

参考:

1. RUNOOB.COM:https://www.runoob.com/python/python-exercise-example11.html

备注:

初次编辑时间:2019年9月24日20:39:50

环境:Windows 7   / Python 3.7.2

【Python】【demo实验14】【练习实例】【斐波那契数列】【经典兔子生小兔子问题】的更多相关文章

  1. Java-Runoob-高级教程-实例-方法:04. Java 实例 – 斐波那契数列

    ylbtech-Java-Runoob-高级教程-实例-方法:04. Java 实例 – 斐波那契数列 1.返回顶部 1. Java 实例 - 斐波那契数列  Java 实例 斐波那契数列指的是这样一 ...

  2. C 语言实例 - 斐波那契数列

    C 语言实例 - 斐波那契数列 斐波那契数列指的是这样一个数列 , , , , , , , , , , , , ,,,,,,,,,,,........ 这个数列从第3项开始,每一项都等于前两项之和. ...

  3. Python(迭代器 生成器 装饰器 递归 斐波那契数列)

    1.迭代器 迭代器是访问集合元素的一种方式.迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器只能往前不会后退,不过这也没什么,因为人们很少在迭代途中往后退.另外,迭代器的一大优 ...

  4. Python开发【算法】:斐波那契数列两种时间复杂度

    斐波那契数列 概述: 斐波那契数列,又称黄金分割数列,指的是这样一个数列:0.1.1.2.3.5.8.13.21.34.……在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=0,F(1)=1, ...

  5. Python初学者笔记:打印出斐波那契数列的前10项

    问题:斐波那契数列(意大利语: Successione di Fibonacci),又称黄金分割数列.费波那西数列.费波拿契数.费氏数列,指的是这样一个数列:0.1.1.2.3.5.8.13.21.- ...

  6. python递归与非递归实现斐波那契数列

    1.题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0). 递归实现: class Solution(): def Fibnacci(self ...

  7. python几个练习(素数、斐波那契数列)

    随机输入求素数: x = int(input("please enter the number:")) if x != 1: for i in range(2, x): if x ...

  8. js 斐波那契数列(兔子问题)

    对于JS初学者来说,斐波那契数列一直是个头疼的问题,总是理不清思路. 希望看完这篇文章之后会对你有帮助. 什么是斐波那契数列 : 答: 斐波那契数列,又称黄金分割数列.因数学家列昂纳多·斐波那契(Le ...

  9. js算法集合(二) javascript实现斐波那契数列 (兔子数列)

    js算法集合(二)  斐波那契数列 ★ 上一次我跟大家分享一下做水仙花数的算法的思路,并对其扩展到自幂数的算法,这次,我们来对斐波那契数列进行研究,来加深对循环的理解.     Javascript实 ...

  10. Python中斐波那契数列的赋值逻辑

    斐波那契数列 斐波那契数列又称费氏数列,是数学家Leonardoda Fibonacci发现的.指的是0.1.1.2.3.5.8.13.21.34.······这样的数列.即从0和1开始,第n项等于第 ...

随机推荐

  1. vue-cli 本地代理 造成session丢失 而登录不上去 解决办法

    本地代理造成session丢失,登录不成功,是由于代理配置造成的 devServer: { port: 8000, proxy:{ '/qiantai':{ target:'线上地址/qiantai' ...

  2. Java中final、finally、finalize

    简述 final 可以用来修饰类.方法.变量,分别有不同的意义: final 修饰的 class 代表不可以继承扩展: final 的变量是不可以修改的:final 的方法也是不可以重写的(overr ...

  3. 平衡Dom总结

    介绍: 新的项目中有些Dom元素需要和画布保持统一个适配比例 项目地址: 宝岛之光-台湾偶像剧 遇到的问题 H5项目使用Canvas, 适配采用保持宽高比例, 上下或者左右留白方式 在项目中有些Dom ...

  4. elasticsearch Delete (根据条件删除)

    之前在 2.X版本里 这个Delete By Query功能被去掉了 因为官方认为会引发一些错误 如需使用 需要自己安装插件. bin/plugin install delete-by-query 需 ...

  5. iscc2018-Reverse-writeup

    RSA256 解析公钥 yafu质因数分解 p=325045504186436346209877301320131277983 q=3028255367440967415185462127611943 ...

  6. (转载)完成端口(CompletionPort)详解 - 手把手教你玩转网络编程系列之三

    转自:http://blog.csdn.net/piggyxp/article/details/6922277 前 言 本系列里完成端口的代码在两年前就已经写好了,但是由于许久没有写东西了,不知该如何 ...

  7. 1.4 Go语言基础之流程控制

    流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的"经脉". Go语言中最常用的流程控制有if和for,而switch和goto主要是为了简化代码. ...

  8. 使用KerasNet

    1.安装Python3.6,必须是3.6因为当前KerasNet的配套版本是3.6 https://www.python.org/ftp/python/3.6.8/python-3.6.8-amd64 ...

  9. springboot 整合logback(有全套的日志配置文件)

    logback介绍:基于Log4j基础上大量改良,不能单独使用,推荐配合日志框架SLF4J来使用,可以和springboot很好的整合,也是springboot默认推荐的. 1.在resources ...

  10. js的深拷贝的理解和实现

    一:什么是深拷贝? 举例:a=b,正常情况下当改变a时b也改变,当改变a时b第一层不改变copy就是浅拷贝,当改变a时b底基层都不会改变就是深拷贝 二:实现深拷贝 1.最简单方法就是使用JSON.st ...