Я пытаюсь написать короткий скрипт на python3, чтобы проверить последнюю теорему Ферма.Хотя я могу тестировать отдельные наборы, мне любопытно, как я могу протестировать «все» или тонну чисел одновременно.Я не уверен, как подойти к этому, так что примеры моего кода того, что я пробовал, немногочисленны.
Как я могу сгенерировать все возможные числовые перестановки для AB и C, где каждая из них> 2?Моя первая проблема с моим подходом, приведенным ниже, заключается в том, что списки в 32-битной системе ограничены примерно 5 миллионами элементов.
def fermat(a, b, c, n):
return a**n + b**n == c**n
def test_fermat():
alist, blist, clist, nlist = [a for a in range(2, 5000000000)], [b for b in range(2, 5000000000)], [c for c in range(2, 5000000000)], [n for n in range(2, 5000000000)]
mixed = itertools.product(alist,blist,clist,nlist)
for item in mixed:
a,b,c,n = item[0], item[1], item[2], item[3]
print(a,b,c,n)
fermat(a,b,c,n)