【Pascal】杨辉三角 高精度解决
【问题描述】3月12日植树节到了,小明的班主任带着全班同学到白云山义务植树。小明心里想还没有去过白云山呢,这下可以好好玩一下。好不容易到了白云山,找到预先安排好的地方,班...
【问题描述】
3 月 12 日植树节到了,小明的班主任带着全班同学到白云山义务植树。小明心里想还没有去过白云山呢,这下可以好好玩一下。好不容易到了白云山,找到预先安排好的地方,班主任把工具分发下去,拿出一张图纸 (如图 1) 展示给大家看,并说明要求:
1
11
121
1331
14641
15101051
我们班所有同学植的树要成一个等腰三角形,等腰三角形的两条腰上按顺序都是植 1 棵树,其他位置植树棵数等于它的左上角和右上角所植树的和。全班同学一定不能弄错,要分工协作,发扬团结互助的精神,把这次植树活动做好。
小明负责本小组植树棵数的计算,例如第 i 行第 j 个位置应植多少棵树。小明认真看了一下图纸,傻眼了,这该怎么计算啊?原来还想好好玩一玩,这下可惨了。你能帮助小明完成计算任务吗?
输入格式:
输入文件只有 1 行:i 和 j 两个数 (1<=i,j<=101,j<=i),中间隔一个空格,表示植树位置为第 i 行第 j 个位置 (从左往右数第 j 个)。
输出格式:
输出文件只有一个数:所求位置上应植数的棵数。
输入样例:
5 3
输出样例:
6 展开
3 月 12 日植树节到了,小明的班主任带着全班同学到白云山义务植树。小明心里想还没有去过白云山呢,这下可以好好玩一下。好不容易到了白云山,找到预先安排好的地方,班主任把工具分发下去,拿出一张图纸 (如图 1) 展示给大家看,并说明要求:
1
11
121
1331
14641
15101051
我们班所有同学植的树要成一个等腰三角形,等腰三角形的两条腰上按顺序都是植 1 棵树,其他位置植树棵数等于它的左上角和右上角所植树的和。全班同学一定不能弄错,要分工协作,发扬团结互助的精神,把这次植树活动做好。
小明负责本小组植树棵数的计算,例如第 i 行第 j 个位置应植多少棵树。小明认真看了一下图纸,傻眼了,这该怎么计算啊?原来还想好好玩一玩,这下可惨了。你能帮助小明完成计算任务吗?
输入格式:
输入文件只有 1 行:i 和 j 两个数 (1<=i,j<=101,j<=i),中间隔一个空格,表示植树位置为第 i 行第 j 个位置 (从左往右数第 j 个)。
输出格式:
输出文件只有一个数:所求位置上应植数的棵数。
输入样例:
5 3
输出样例:
6 展开
1个回答
推荐于2016-11-09
展开全部
var
a:array[1..200,1..200] of longint;
i,j:integer;
begin
for i:=1 to 200 do begin a[i,1]:=1; a[i,i]:=1; end;
for i:=3 to 200 do for j:=2 to i-1 do a[i,j]:=a[i-1,j-1]+a[i-1,j];
readln(i,j);
writeln(a[i,j]);
end.
a:array[1..200,1..200] of longint;
i,j:integer;
begin
for i:=1 to 200 do begin a[i,1]:=1; a[i,i]:=1; end;
for i:=3 to 200 do for j:=2 to i-1 do a[i,j]:=a[i-1,j-1]+a[i-1,j];
readln(i,j);
writeln(a[i,j]);
end.
追问
谢谢哒,但是要高精度→_→
不然我发来问啥→_→
追答
高精度用decimal basic吧,它能支持1008位精度的十进制数。以下是basic程序:
OPTION ARITHMETIC DECIMAL_HIGH
DIM a(200,200)
FOR i=1 TO 200
LET a(i,1)=1
LET a(i,i)=1
NEXT i
FOR i=3 TO 200
FOR j=2 TO i-1
LET a(i,j)=a(i-1,j-1)+a(i-1,j)
NEXT j
NEXT i
INPUT i,j
PRINT a(i,j)
END
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询