斐波那契数列题目[集锦]
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
斐波那契数列问题。
(专业C++作业ch4-1)
题目描述
著名意大利数学家斐波那契(Fibonacci)1202年提出一个有趣的问题。
某人想知道一年内一对兔子可以生几对兔子。
他筑了一道围墙,把一对大兔关在其中。
已知每对大兔每个月可以生一对小兔,而每对小兔出生后第三个月即可成为“大兔”再生小兔。
问一对小兔一年能繁殖几对小兔?
提示:
由分析可以推出,每月新增兔子数Fn={1,1,2,3,5,8,13,21,34,…}(斐波那契数列),可归纳出F1=1,F2=1,……,Fn=Fn-2+Fn-1。
仿照课本P128页的“2.基本题(1)”进行编程。
注意,(1)课本上的程序显示出数列的前16项的所有数值,这里要求只显示第n项数值;(2)课本上的程序在每次循环时显示数列中的两个数值(i=3时,显示了数列的第3项和第4项)。
输入描述
一个正整数n,表示求第n个月的新增的兔子数。
输出描述
对输入的n,求第n个月的新增的兔子数。
输入样例
16
输出样例
987
2. (18分)
求阶乘和。
(专业C++作业ch4-2)
题目描述
编程求出阶乘和1!+2!+3!+…+n!。
注意:13!=6 227 020 800已经超出unsigned long的范围,故程序中不宜采用整型数据类型,而应使用双精度类型存放结果。
输入描述
一个正整数n,n的值不超过18。
输出描述
对输入的n,求阶乘和1!+2!+3!+…+n!。
(输出结果时,可以用输出格式控制“cout<<setprecision(17)”来控制双精度类型的结果按17个有效数字的方式显示)
输入样例
10
输出样例
4037913
3. (18分)
除法问题。
(专业C++作业ch4-3)
题目描述
编写一个函数原型为int f(int n);的函数,对于正整数n计算并返回不超过n 的能被3除余2,并且被5除余3,并且被7出余5的最大整数,若不存在则返回0。
应编写相应的主函数调用该函数,在主函数中接受用户输入的正整数n。
输入描述
一个正整数n。
输出描述
找到满足条件的整数显示,找不到显示0。
输入样例
100
输出样例
68
8分)
求立方根。
(专业C++作业ch4-4)
题目描述
计算x的立方根的迭代公式为y0=1,yn+1=yn+(x/(yn*yn)-yn)/3 ,试编写一个函数double cuberoot(double x);计算浮点型数值的立方根,并编写一个主函数,在主函数中输x的值,计算x的立方根。
提示:可仿照课本P112页源代码4.3。
请注意:计算x的y次幂的系统函数double pow(double x,double y);要求x非负。
输入描述
输入x,x可以是正数、零、负数。
输出描述
x的立方根,要求结果按定点小数方式显示,并精确到小数点后6位。
输入样例
17
输出样例
2.571282
5. (18分)
细菌繁殖。
(专业C++作业ch4-5)
题目描述
编程求解问题:有一种细菌,从其产生的第4分钟后,每分钟都产生一个同种细菌。
若某初始时刻仅有一个这种细菌,那么此后第n分钟时共有多少种这种细菌?
提示:初始时刻(第t=0分钟),a(0)=1,b(0)=c(0)=d(0)=0,细菌总数为
s(0)=a(0)+b(0)+c(0)+d(0)=1。
下一时刻d(t+1)=c(t)+d(t),c(t)=b(t),
b(t)=a(t),a(t)=d(t)。
输入描述
输入正整数n。
输出描述
输出n+1个数,表示从开始时刻(第0分钟)到第n分钟(共n+1个时刻),每个所有产生的细菌数的总数,数据之间用一个空格隔开。
输入样例
10
输出样例
1 1 1
2
3
4
5 7 10 14 19
6. (10分)
判断算式正确性。
(专业C++作业ch4-6)
题目描述
给定一个算式,该算式中只含有一个四则运算符号,操作数及结果均为整数。
要求判断改算式的正确性(规定:除法必须除尽才可能正确)。
输入描述
输入数据有多行,每行为一个算式。
(从输入样例可见,操作数、运算符之间可能有空格字符,可能没有。
在默认的情况下,抽取运算符将忽略数据项前的空白字符。
可以仿照课本P66页源代码2.6的方式,使用
while(cin>>x>>…)进行输入数据的处理。
)
输出描述
对于每一种情形,要求先输出“Case 序号: ”,然后输出correct(表示算式正确)或者incorrect(表示算式错误)。
输入样例
1+2=3
1 -
2 = -1
5/ 2 = 2
4 /2=2
输出样例
Case 1: correct
Case 2: correct
Case 3: incorrect
Case 4: correct。