PASCAL问题求解答

题目:循环练习-Fibonacci数列题目描述Fibonacci(斐波那契)数列是一组特殊的数,数列的第一个为1,第二个为1,从第三个开始,每个数为前两数之和。试编写一个... 题目:循环练习 - Fibonacci数列题目描述Fibonacci(斐波那契)数列是一组特殊的数,数列的第一个为1,第二个为1,从第三个开始,每个数为前两数之和。试编写一个程序,获得数列中任意一个值
输入
有多组数据组成,每组的一行正整数N,表示需要输出第N个Fibonacci数,n为整型数据
输出
对应每个输入的N,输出第N个Fibonacci数,独占1行。样例输入1
2
3
样例输出1
1
2
展开
 我来答
RedBaronVIP
2012-12-23 · TA获得超过1147个赞
知道小有建树答主
回答量:655
采纳率:0%
帮助的人:239万
展开全部
这个题可逗,输入多少个数算完啊,玩死循环啊?哪个出的题,真是没脑。
program Project1;
const
fib_max = 500;
var
fibonacci: array[1..fib_max] of Longint;
i: Integer;
begin
fibonacci[1] := 1;
fibonacci[2] := 1;
for i := 3 to fib_max do
fibonacci[i] := fibonacci[i - 1] + fibonacci[i - 2];
while True do
begin
Readln(i);
if i <= fib_max then
Writeln('--', fibonacci[i])
else Writeln('-- Out of range');
end;
end.
更多追问追答
追问
输入的数据N 为Fibonacci数列中的第N个数字,不会有死循环啊?!
追答
样例输入1
2
3
样例输出1
1
2

请问,N在哪??
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
NOIQno1
2012-12-23 · TA获得超过125个赞
知道答主
回答量:56
采纳率:0%
帮助的人:38.9万
展开全部
你可以用迭代法 或者直接
通项公式为fib(n) = [(1+√5)/2]^n /√5 - [(1-√5)/2]^n /√5 (n=1,2,3.....),
来自:求助得到的回答
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式