1
パスカル三角形のハイステップをプリントするにはどうすればよいですか?多分500または1000のプログラムが正常に動作していない私は、高いステップパスカルの三角形のハイステップを印刷
#include <iostream>
using namespace std;
int main()
{
unsigned long long int rows, coef = 1;
cout << "Enter number of rows: ";
cin >> rows;
for(unsigned long long int i = 0; i < rows; i++)
{
for(unsigned long long int space = 1; space <= rows-i; space++)
cout <<" ";
for(unsigned long long int j = 0; j <= i; j++)
{
if (j == 0 || i == 0)
coef = 1;
else
coef = coef*(i-j+1)/j;
cout << coef << " ";
}
cout << endl;
}
return 0;
}
通常は、18446744073709551615の後にオーバーフローします。整数がその数を超えると、物事はファンキーになります(ゼロにオーバーフローし、計算結果が不正確になります)。 "BigInteger"クラスが必要です。いくつかの提案についてはhttps://stackoverflow.com/q/4507121/5390105を参照してください。 – ThatsJustCheesy
私はgmpxx.hをお勧めします。あなたはhttps://stackoverflow.com/a/46002206/2785528で "gmpxx.h"の私の使用を見ることができます –