白駿4690完全平方


質問する
フィマの最後の定理は,a,b,cが0の整数ではなく,nが2より大きい自然数の場合,a^n=b^n+c^nを満たす自然数a,b,cは存在しないことである.この定理はまだ証明されていない.
しかし,完全立方方程式a^3=b^3+c^3+d^3を満たす1よりも大きな自然数を見つけることは難しくない.(12^3 = 6^3 + 8^3 + 10^3)
プログラミングプログラムは、これらの完全二乗方程式とa≦100を満たすすべての{a、b、c、d}対を検索する.
入力
この問題は入力されていません.
しゅつりょく
a値は、出力フォーマットに示すように、インクリメント順に出力される.b,c,dもインクリメント順に行う.a値に対応するb,c,d対が複数存在してもよい.このときb値はまず小さいものから出力される.
次の出力例は、ほんの一部しかリストされていません.
入力例1
サンプル出力1
Cube = 6, Triple = (3,4,5)
Cube = 12, Triple = (6,8,10)
Cube = 18, Triple = (2,12,16)
Cube = 18, Triple = (9,12,15)
Cube = 19, Triple = (3,10,18)
Cube = 20, Triple = (7,14,17)
Cube = 24, Triple = (12,16,20)
解法
四重はドアで、すべて試します.
aは6から順序対が存在し,aは6から複文を開始する.
bは2から始まります.
cはbより1大きく始まり、dはcより1大きく始まる.
コード#コード#
result = ''
for a in range(6, 101):
    for b in range(2, 101):
        for c in range(b + 1, 101):
            for d in range(c + 1, 101):
                if (a * a * a) == (b * b * b) + (c * c * c) + (d * d * d):
                    result += f'Cube = {a}, Triple = ({b},{c},{d})\n'
                if (a * a * a) < (b * b * b) + (c * c * c) + (d * d * d):
                    break
print(result, end='')
白駿4690完全平方