作业帮 > 综合 > 作业

pascal 的fibonacci问题.求第n项的值.这个为啥偶数的是对的.奇数输出就不对了.

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/06/06 09:31:24
pascal 的fibonacci问题.求第n项的值.这个为啥偶数的是对的.奇数输出就不对了.
var a,b,c,n:integer;
begin
read(n);
b:=0;
c:=1;
a:=0;
repeat
c:=c+b;
b:=c+b;
a:=a+1;
until a=round(n div 2);
if n mod 2=1 then
write(c);
if n mod 2=0 then
write(b)
end.
pascal 的fibonacci问题.求第n项的值.这个为啥偶数的是对的.奇数输出就不对了.
何苦这么写呢
var
i,n:integer;
a,b,c:qword;
begin
readln(n);
a:=1;b:=1;c:=1;
for i:=3 to n do begin
c:=a+b;
a:=b;
b:=c;
end;
writeln(c);
end.

你的代码虽然比我的代码再循环中少一次赋值,但是
until a=round(n div 2);

这一句要做一次整除运算,还要调用函数,就不如我的了
再问: i:=3to n 的意义是什么。。谢谢
再答: 你们没学过for循环,while循环应该学过吧 就是 i:=3; while i