Треугольник Стирлинга
Помогите дописать программу для задачки треугольник Стирлинга, есть наметки, но пока не доходит что надо исправить. При вводе числа 6 программа должна выдавать:
1
0 1
0 1 1
0 1 3 1
0 1 7 6 1
0 1 15 25 10 1
а выдает:
0
0 0
1 0 0
3 1 0 0
6 7 1 0 0
0 0 1 15 25 10
Код:
#include <iostream>
using namespace std;
int main()
{
long n, i, j;
cin>>n;
long a[n+1];
for(i=1; i<=n; i++){
a[i]=1;
}
a[0]=0;
for(j=1; j<n; j++){
for(i=j; i>0; i--){
cout<<a[i-1]<<" ";
a[i]=a[i]*(i-1)+a[i-1];
}
cout<<endl;
}
for(i=0; i<n; i++)
cout<<a[i]<<" ";
}
Источник: Stack Overflow на русском