【问题描述】要求实现一个计算Fibonacci数的函数,并利用其实现另一个函数——输出两正整数m和n(0<m<n≤100000)之间的所有Fibonacci数的数目。所谓Fibonacci数列就是满足任一项数字是前两项的和(最开始两项均定义为1,即fib(0)=fib(1)=1)的数列。
其中函数fib(i)须返回第i项Fibonacci数;
函数PrintFN(m,n)用列表返回[m, n]中的所有Fibonacci数。
要求输入区间范围m、n以及i打印输出区间[m,n]中Fibonacci数的数目,以及第i项Fibonacci数。
提示:Fibonacci数列从第0项开始。

【样例输入】20 100 6

【样例输出】fib(6) = 13

4

【样例说明】区间[20,100]中的Fibonacci数个数为4个,以及第6项Fibonacci数为13。

步骤一:定义fib(i)函数

def fib(i):if i==0 or i==1:return 1else:return fib(i-1)+fib(i-2)  #满足任一项数字是前两项的和

解释:最开始前两项均为1,且Fibonacci数列从第0项开始。   Fibonacci数列就是满足任一项数字             是前两项的和。

步骤二:定义PrintFN(m,n)函数

函数PrintFN(m,n)用列表返回[m, n]中的所有Fibonacci数。

def PrintFN(m,n):a=[]for i in range(25):  #因为题目规定(0<m<n≤100000),而fib(24)<100000,fib(25)>100000if fib(i)>=m and fib(i)<=n:a.append(i)return a

步骤三:根据题目样例输入输出规定运用函数。

m,n,i=input().split()
m=int(m)
n=int(n)
i=int(i)
j=fib(i)
print("fib({0}) = {1}".format(i,j))
list1=PrintFN(m,n)
print(len(list1))

输入样例

20 100 6

输出样例

fib(6) = 13
4

易错点总结:

1、容易忽略Fibonacci数列从第0项开始,且前两项均为1.

2、容易忽略m,n的取值范围而缺少对定义printfn()函数时的限制

码字不易,觉得有用的话就点个小赞收藏起来慢慢看吧

用python实现一个计算Fibonacci数的函数相关推荐

  1. python构建一个计算列表中位数的函数_python学习之数据科学库

    numpy创建数组 #导入numppy库, 对numpy重命名为np. import numpy as np #1). 创建数组: a, b, c创建的数组相同, 任选一种; #方法一: 直接将数组/ ...

  2. python编写一个判断完数的函数过程_1.编写一个函数判断一个整数是否是完数(一个数如果恰好等于他的因子之和,这个数就称为完数,如6=1+2+3)...

    [判断题]22. 在底稿列表页签,单击按钮"刷新",或单击右键菜单"刷新",可以刷新底稿列表,同时刷新底稿状态. [判断题]18. 当选择按底稿分配情况显示底稿 ...

  3. python编写一个判断完数的函数过程_第4章-30 找完数 (20分)python

    所谓完数就是该数恰好等于除自身外的因子之和.例如:6=1+2+3,其中1.2.3为6的因子.本题要求编写程序,找出任意两正整数m和n之间的所有完数. 输入格式: 输入在一行中给出2个正整数m和n(1 ...

  4. 如何用python写一个计算日期间隔的程序?

    如何用python写一个计算日期间隔的程序? 文章目录 如何用python写一个计算日期间隔的程序? 前言 问题梳理 问题解决 写在后面 前言 为什么想起来写一个这样的程序呢? 前几天聊天的时候,突然 ...

  5. 编写一个判断完数的函数。完数是指一个数恰好等于它的因子之和,如6=1+2+3,6就是完数。

    编写一个判断完数的函数.完数是指一个数恰好等于它的因子之和,如6=1+2+3,6就是完数. 程序之美 编写一个判断完数的函数.完数是指一个数恰好等于它的因子之和,如6=1+2+3,6就是完数. #in ...

  6. 编写一个判断完数的函数python_完数

    计算完数的题 我错的忘记了 amount 需在第一重循环中初始化值为"0" public class Test { public static void main(String[] ...

  7. python编写一个名为collatz()的函数,它有一个名为number的参数,如果参数是偶数,那么collatz()就打印出number//2,如果number是奇数,collatz()就打印3*

    [开发该软件的操作系统]:windows10 [软件开发环境/开发工具]:PyCharm [编程语言]:Python [开发目的]:这是老师布置的作业啦~ 供初学者参考学习 [开发者]:江西农业大学2 ...

  8. python定义一个解一元二次方程的函数

    不讨论二次,一次参数都是零的情况,不讨论有虚数根的情况 思路: 利用求根公式做判断有无实数根b*b-4*a*c 利用求根公式进行求解 步骤: 构建一个三个形参的函数,做根的判别式: import ti ...

  9. 用Python写一个批量生成账号的函数(用户控制数据长度、数据条数)

    # 1.写一个函数,批量生成一些注册使用的账号:产生的账号是以@163.com结尾,长度由用户输入,产生多少条也由用户输入,用户名不能重复,用户名必须由大写字母.小写字母.数字组成 import ra ...

最新文章

  1. 为什么 JavaScript 的私有属性使用 # 符号
  2. 原生ajax+php上传图片的简单实现
  3. 一个Portal处理流程
  4. python批量读取csv文件-使用Python读写csv文件的三种方法
  5. wxWidgets:wxHyperlinkCtrl类用法
  6. numpy之高维数组的转置:transpose方法——通过几何体来迅速理解
  7. 电脑屏幕卡住了按什么都没反应_刚买2个月,联想电脑屏幕出现坏点,售后回复:坏点不够3个不能保修...
  8. [JZOJ P1271] [DP]集合求和
  9. 阿里技术副总裁贾扬清、微软 CTO 韦青重磅出席 AI 开发者大会!
  10. Go圣经-学习笔记之复合类型(二)
  11. GDB 调试 ---转 比较全的东东
  12. python pos函数_从0入门Python — 4. 函数
  13. Python运维开发工程师养成记
  14. 斐讯K2刷华硕固件教程(最新)
  15. 离散域下的泊松方程求解(python实现)
  16. android studio布局文件在哪,android studio布局文件详解
  17. 大众新能源电动车ID.3ID.4技术培训教材手册维修手册电路图
  18. redis报错Unrecoverable error: corrupted cluster config file.
  19. better-scroll基本使用
  20. 模拟数字接口及调制解调器

热门文章

  1. Android Battery 开发(三) BatteryService
  2. 2021年广州市越秀区杰出产业人才申报条件及材料,补贴30万
  3. 网格化覆盖·智能化管控·数字化通行|公租房智能门锁有一套!
  4. McAfee全新反间谍软件解决方案(转)
  5. 华为怎么分屏操作技巧_糖豆人终极淘汰赛扒拉怎么操作 扒拉抓人技巧介绍
  6. 帮我写一个基于java的朗读器可以自动分析本文情感的代码
  7. php连接mysql代码
  8. 计算机在平面设计上的应用,计算机辅助设计在平面设计中的应用
  9. realsense深度图像读取对齐与保存
  10. 机器学习预测模型导出pmml文件