MaksSsimuS писал(а):Да,так и получается,если мы берем простое число p,то у нас в результате будет тож простое.....но скажите,как определить число p простым.....по идее оно должно делиться только на себя и на 1.так получаеся,что надо определенное число брать и делить на все числа стоящие перед ним???чтобы определить простоту???или как проще?и как выделить памятьт под массив???подскажите=)
Зачем на все?, выше уже писали "до корня из N". Можно "перепрыгивать" чётные делители - проверить только двойку.
Ай, мозги совсем состарились... Вы правы MaksSsimuS, см. раздел "Алгоримы", тема "Определение простоты числа".
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Хыиуду писал(а):Ай, мозги совсем состарились... Вы правы
MaksSsimuS, см. раздел "Алгоритмы", тема "простые числа"
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
chur писал(а):Это неверно, что если p простое, то и 2^p-1 то же простое.
Верно только, что если p составное, то и 2^p-1 то же составное.
Также верно, что если 2^p-1 простое, то p тоже простое.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
неверно. Например 2047 (2^11-1) делится на 23. Любое из такие чисел, кажется, имеет минимум один делитель вида 2n+1 (2*11 + 1)
В качестве помощи проблеме настоятельно рекомендую почитать вот здесь
It's a long way to the top if you wanna rock'n'roll
Количество известных простых чисел Мерсена на данный момент чуть более 40 штук. Не 40 тысяч, а просто 40.
Т.е. с вероятностью близкой к единице число вида 2^p-1 будет составным