Хорошо, я мог бы порекомендовать вам перечитать Теорема Ферма 4n + 1 .
Если разработчики программного обеспечения используют правильные инструменты для работы, у вас есть простые решения.Моя функция Mathematica:
P[p_] := Reduce[-p + x^2 + y^2 == 0, {x, y}, Integers]
Примеры:
Поиск решений для первых нескольких простых чисел p, равных 1 или 2 (мод 4).
P /@ {2, 5, 13, 17, 29, 37, 41, 53, 61}
![enter image description here](https://i.stack.imgur.com/h9vkb.png)