杨辉三角找错问题
本帖最后由 砚凉— 于 2017-5-30 16:49 编辑{:10_250:} #include<iostream>
using namespace std;
int pp(int,int);
int main()
{
int x,y,sum,f;
cin>>x;
f=x-1;
for(int i=0;i<=f;i++)
{ int j=1;
while(j<=3*(i+1)/2)
{
if(j<(i+1)/2)
{cout<<" ";}
else
{
for( y=1;y<=i+1;y++)
{
cout<<pp(i,y);
if(y=i+1)
{
cout<<endl;
}
}
}
j++;
}
}
return 0;
}
int pp(int n,int m)
{
if((n==0)||(m==1)||(m==n+1))
return 1;
return pp(n-1,m-1)+pp(n-1,m);
}
代码可读性不太理想
main函数里面逻辑有问题
pp函数没有写对,永远返回1
你可以百度“杨辉三角”,里面有C++代码如下:
#include<cstdio>
#include<iostream>
using namespace std;
long long int Triangle;
int main()
{
Triangle=1;//初始化
Triangle=1;Triangle=1;
for(int i=3;i<=50;i++)//制作三角。
{
for(int j=1;j<=i;j++)
{
Triangle=Triangle+Triangle;
}
}
for(int i=1;i<=50;i++)//输出
{
for(int j=1;j<=i;j++)
{
cout<<Triangle<<"";
}
cout<<endl;
}
return 0;
}
页:
[1]