巴斯卡三角形理解

编程编写巴斯卡三角形,这段程序实际上也就只有一段计算函数,大部分函数其实只是控制输出格式而已

代码如下

int bskmath(int n,int r)    //计算函数
{
int i;
long p = 1;
for (i = 1; i <= r; i++)
{
p = p*(n - i + 1) / i;       //计算巴斯卡三角形,而实际的计算函数也就是这一个
}
return p;
}
void bskTriangle()      //这个函数实际上也就是控制输出,是输出的更加符合三角形的外观
{
int n, r;
long p = 1;
for (n = 0; n <= 13; n++) //控制行数
{
for (r = 0; r <= n; r++) //控制个数
{
int k;
if (r == 0) //当第一个元素时
{
for (k = 0; k <= (13-n); k++) //随着n的增加,空格越来越少
{
cout << " "; //显示空格,也就是每行第一个元素在什么地方
}
}
else
{
cout << " "; //每个数间空行
}

cout <<setw(3)<< bskmath(n,r);
}
cout << endl;
}

}

接下来通过主函数调用两个函数就可以得到13行的巴斯卡三角形

猜你喜欢

转载自www.cnblogs.com/wurenchangtian/p/12002978.html