smirnvlad
Full Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору FXPELIVE Цитата: Теперь вроде-как работает, правда только с этим числом, с другими повисает... | во-первых for i:=1 to 2 do bnSum(Li,Li,Li); bnSub(Li,B,Li); {L^2 - 2} это не {L^2 - 2}, а {L*2*2 - 2} во-вторых, он не виснет, а скорей всего очень долго вычитает, потому как 2^19937 очень большое число и видимо для получения остатка от деления надо написать его не через вычитание, а написать деление я проверял для p=7, 13, 17 всё работает, и если для 7 считает быстро (151 вычитание), то для 13 уже приходиться ждать пару секунд (11265 вычитаний), для 17 у меня считает минуту (807191 вычитание), если остаток от деления считать делением, а не вычитанием, время не будет расти так быстро |