世界第一难的free pascal循环问题
题目是:某人上台阶,一步可以走一个台阶,也可以走两个台阶,还可以走三个台阶。问他走到10层台阶时共有多少种不同走法?谁能把程序编给我?...
题目是:某人上台阶,一步可以走一个台阶,也可以走两个台阶,还可以走三个台阶。问他走到10层台阶时共有多少种不同走法?
谁能把程序编给我? 展开
谁能把程序编给我? 展开
4个回答
展开全部
怎么楼上那么喜欢骂人,你学斐波那契数列时别人骂你了吗?
用F[I]表示上到第I级台阶时的方法数
因为F[I]只能由F[I-1],F[I-2],F[I-3]三种状态到达,所以递推式
F[I]=F[I-1]+F[I-2]+F[I-3]
Var F:Array[0..10]of Longint;
I:Longint;
Begin
F[0]:=1;
F[1]:=1;
F[2]:=2;
For I:=3 to 10 do
F[I]:=F[I-1]+F[I-2]+F[I-3];
Writeln(F[10]);
End;
用F[I]表示上到第I级台阶时的方法数
因为F[I]只能由F[I-1],F[I-2],F[I-3]三种状态到达,所以递推式
F[I]=F[I-1]+F[I-2]+F[I-3]
Var F:Array[0..10]of Longint;
I:Longint;
Begin
F[0]:=1;
F[1]:=1;
F[2]:=2;
For I:=3 to 10 do
F[I]:=F[I-1]+F[I-2]+F[I-3];
Writeln(F[10]);
End;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这样吧
var i,j,k:integer;
begin
for i:=1 to 10 do
for j:=1 to 5 do
for k:=1 to 3 do
if i+j*2+k*3=10 then
writeln(i,j,k);
readln;
end.
var i,j,k:integer;
begin
for i:=1 to 10 do
for j:=1 to 5 do
for k:=1 to 3 do
if i+j*2+k*3=10 then
writeln(i,j,k);
readln;
end.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你是不是太笨了..
这叫世界第一难. 你估计NOIP三等奖都拿不到 猪
脑
子..
这叫世界第一难. 你估计NOIP三等奖都拿不到 猪
脑
子..
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
傻瓜,菲薄那奇数列
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询