主题:请教下杨辉三角型
dongchengok
[专家分:20] 发布于 2005-01-09 05:35:00
[em18]请教一下各位高手杨辉三角形大家怎么做的啊~我是先定义了一个函数算组合数,还有什么好办法吗?
回复列表 (共22个回复)
11 楼
浣浣 [专家分:0] 发布于 2005-02-18 20:17:00
我比较笨一点
所以你能不能告诉我再哪加呀
谢谢了
12 楼
浣浣 [专家分:0] 发布于 2005-02-18 20:17:00
我比较笨一点
所以你能不能告诉我再哪加呀
谢谢了
13 楼
浣浣 [专家分:0] 发布于 2005-02-18 20:17:00
我比较笨一点
所以你能不能告诉我再哪加呀
谢谢了
14 楼
浣浣 [专家分:0] 发布于 2005-02-18 20:18:00
我比较笨一点
所以你能不能告诉我再哪加呀
谢谢了[em18]
15 楼
lasselore [专家分:60] 发布于 2005-02-22 20:50:00
杨辉三角么,看你是侧重时间还是侧重空间。如果是时间要求紧就用二维数组(一维换算的也可以),如果空间紧就组合数。个人喜欢组合数。
16 楼
浣浣 [专家分:0] 发布于 2005-02-23 11:53:00
能不能请你说得再清楚些
我都想知道
一维二维
怎么做
17 楼
bluewho [专家分:0] 发布于 2005-03-29 18:33:00
这个是我刚刚编制的程序:可以运行成功。
/*打印杨辉三角*/
main()
{
int a[10][10],i,j;
for(i=0;i<=9;i++)
for(j=0;j<=9;j++)
{
if(j==0)a[i][j]=1;
else if(i==j)a[i][j]=1;
else if (i<j)a[i][j]=0;
else a[i][j]=a[i-1][j-1]+a[i-1][j];
}
for (i=0;i<=9;i++)
for(j=0;j<=i;j++)
if(i>j)
printf("%d ",a[i][j]);
else printf("%d\n",a[i][j]);
}
18 楼
风清书阳 [专家分:60] 发布于 2005-03-29 19:22:00
可以不用数组做吗?用循环语句!
19 楼
xuzhenyi [专家分:850] 发布于 2005-03-30 20:58:00
用数组不就在用循环嘛
20 楼
xpycc [专家分:410] 发布于 2005-04-01 12:13:00
源程序
program yanghui;
const
n=10;
var
i,j:integer;
yh:array[1..n,1..n] of integer;
begin
yh[1,1]:=1;
for i:=2 to n do
begin
yh[i,1]:=1;
yh[i,i]:=1;
for j:=2 to i-1 do
yh[i,j]:=yh[i-1,j-1]+yh[i-1,j];
end;
for i:=1 to n do
begin
write(' ':40-3*i);
for j:=1 to i do
write(yh[i,j]);
writeln;
end;
end.
program yanghui2;
const
n=10;
var
x,i,j:integer;
begin
for i:=0 to n do
begin
write(1:(5-i)*2);
for j:=1 to i do
begin
x:=x*(i-j+1) div i;
write(x:4);
end;
writeln;
end;
end.
我来回复