Программа на языке паскаль. Дано натуральное N . Определить, является ли оно простым.

2

Ответы и объяснения

  • Участник Знаний
2012-05-23T21:22:28+04:00

Хочу предупредить, что до настоящего времени эта задача для любого натурального N численно НЕ РЕШЕНА!!!. То есть, до сих пор не написана программа, которая, работая на самом мощном компьютере, могла бы определить простоту числа N за приемлемое время(не сотни и тысячи ЛЕТ, как сейчас). Конечно, эти N - ОЧЕНЬ большие. Если бы кто нибудь написал такую программу, то рухнула бы вся банковская система, и все отрасли, включая военные, так как везде применяются алгоритмы шифрования данных, основанные на простых числах и подобрать шифр можно было бы за приемлемое время. Вот такая история с этой ОЧЕНЬ СЛОЖНОЙ задачей.

 

Что касается "детского" варианта, наверное самый простой алгоритм - решето Эратосфена. Да, красивое(но ресурсное) решение может получиться с использованием рекурсии(не знаю, допускает ли рекурсию школьный Паскаль, но поинтересуйтесь, что это такое).

 

Текст программы приводить не буду, он, вероятно, опубликован в каждом втором букваре по программированию. 

2012-05-23T23:58:03+04:00

Это Проверенный ответ

×
Проверенные ответы содержат надёжную, заслуживающую доверия информацию, оценённую командой экспертов. На "Знаниях" вы найдёте миллионы ответов, правильность которых подтвердили активные участники сообщества, но Проверенные ответы - это лучшие из лучших.

var n,i:integer;

Begin

  read(n);

  for i := 2 to n-1 do

    if n mod i = 0 then begin

      writeln('Ne prostoe');

       exit;

    end;

  end;

  writeln('Prostoe');

End.