【杨辉三角】编写程序,打印出以下形式的扬辉三角形。
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
可以将杨辉三角形的值放在一个方形矩阵的下半三角中,如果需打印7行杨辉三角形,应该定义等于或大于7X7的方形矩阵,只是矩阵的上半部和其余部分并不使用。
杨辉三角形具有如下特点:
(1)第0列和对角线上的元素都为1。
(2)除第0列和对角线上的元素以外,其它元素的值均为前一行上的同列元素和前一列元素之和。函数setdata按以上规律给数组元素置数,函数outdata输出杨辉三角形。
#include <iostream>
using namespace std;
void setdata(int a[7][7]);
void outdata(int a[7][7]);
int main()
{
int a[7][7]={0};
setdata(a); //给数组赋值
outdata(a); //输出数组
return 0;
}
void setdata(int a[7][7])
{
int i,j;
for(i=0;i<7;i++)
{
a[i][0]=1;
a[i][i]=1;
}
for(i=0;i<7;i++)
{
for(j=1;j<i;j++)
a[i][j]=a[i-1][j]+a[i-1][j-1];
}
}
void outdata(int a[7][7])
{
int i,j;
for(i=0;i<7;i++)
{
for(j=0;j<=i;j++)
cout<<a[i][j]<<'\t';
cout<<endl;
}
}