本题要求按照规定格式打印前N行杨辉三角。
输入格式:
输入在一行中给出N(1≤N≤10)。
输出格式:
以正三角形的格式输出前N行杨辉三角。每个数字占固定4位。
输入样例:
6
输出样例:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
基本原理就是左上右上两个数相加得到结果
#include<iostream>
//#include<string>
//#include<fstream>
using namespace std;
int main()
{
int n , a[20][20], i , j, k ;
cin >> n;
for ( i = 1 ; i <= 10 ; i++ )
{
for( j = 1 ; j <= 10 ; j++ )
{
a[i][j] = 1;
}
}
for ( i = 3 ; i <= n ; i ++ )
{
for( j = 2 ; j < i ; j++ )
{
a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
}
}
for ( i = 1 ; i <= n ; i ++ )
{
for( k = n ; k >= i+1 ; k-- )
{
cout << " ";
}
for( j = 1 ; j <= i ; j++ )
{
if(a[i][j] > 9 && a[i][j] < 100)
cout << " " << a[i][j];
if(a[i][j] > 99)
cout << " " << a[i][j];
if(a[i][j] < 10)
cout << " " << a[i][j];
}
cout << endl;
}
return 0;
}