Ответ:
procedure recursiveprime(num:integer);
var
i:integer;
begin
{тупая проверка *числа* на простоту - пытаемся поделить на все числа от 2 до *числа*/2)
i:=2;
while i<(num div 2) and (num mod i <> 0) do inc(i)
if i=num div 2 then println(num,"- простое!');
if num<60 then recursiveprime(num+1);
end;
recursiveprime(4);
end.
Объяснение:
ну как-то так.. паскаля под рукой нет, лет 7 назад последний раз трогал дельфи
рекурсивная процедура которая вызывает саму себя со следующим числом если переданое ему число меньше 60
проверка на простоту - пытаемся поделить на все числа от 2 до половины проверяемого числа и проверяем остатки.
надеюсь мысль понятна
Copyright © 2024 SCHOLAR.TIPS - All rights reserved.
Answers & Comments
Ответ:
procedure recursiveprime(num:integer);
var
i:integer;
begin
{тупая проверка *числа* на простоту - пытаемся поделить на все числа от 2 до *числа*/2)
i:=2;
while i<(num div 2) and (num mod i <> 0) do inc(i)
if i=num div 2 then println(num,"- простое!');
if num<60 then recursiveprime(num+1);
end;
begin
recursiveprime(4);
end.
Объяснение:
ну как-то так.. паскаля под рукой нет, лет 7 назад последний раз трогал дельфи
рекурсивная процедура которая вызывает саму себя со следующим числом если переданое ему число меньше 60
проверка на простоту - пытаемся поделить на все числа от 2 до половины проверяемого числа и проверяем остатки.
надеюсь мысль понятна