7

フェルマーの最終定理のこの定義を採用しています。

小さな値について検証するアルゴリズムをコーディングしようとしました。

#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++ プログラミングの "大整数" について、間違った結果を得る可能性がある何かが欠けていますか?

4

3 に答える 3