フェルマーの最終定理のこの定義を採用しています。
小さな値について検証するアルゴリズムをコーディングしようとしました。
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
//a^n + b^n = c^n
int a, b, c, n, count = 0;
for (n = 3; n < 1000; n++)
for (a = 1; a < 1000; a++)
for (b = 1; b < 100; b++)
for (c = 1; c < 1000; c++)
{
if (a != b && b != c && a != c)
{
if (pow(a,n) + pow(b,n) == pow(c,n))
{
cout << "\na: " << a << " b: " << b << " c: " << c << " n: " << n;
count++;
}
}
}
cout << count << " combinazioni";
}
そして、これは出力の一部の画面です:
それはどのように可能ですか?C++ プログラミングの "大整数" について、間違った結果を得る可能性がある何かが欠けていますか?