Алгоритмы 9 класс.55 балов. Решите, пожалуйста.

0 голосов
27 просмотров

Алгоритмы 9 класс.55 балов. Решите, пожалуйста.


image

Информатика (25 баллов) | 27 просмотров
0

Это задания по программированию?

0

Надо словами или кодом?

0

как угодно

Дан 1 ответ
0 голосов
Правильный ответ

Program zadach1;
label 1,2,3;
var a,p,l,i,l2,j:integer;
begin
randomize;
3:
a:=random(1000)+1;
l:=round(sqrt(a));
for i:=2 to l+3 do
begin
if(a mod i=0)then begin
l2:=round(sqrt(i));
for j:=2 to l2 do
begin
if(i mod j=0)then goto 1;
end;
goto 2;
end;
1:
end;
2:
if(i=l+3)then goto 3;
writeln(i);
end.
Для того чтобы компьютер подобрал произвольные числа используем процедуру randomize
после чего присваиваем переменную a random(...)+.. или -
для данной задачи проверяем все числа от 2 до корня данного числа
так как 1 это не простое число и то что до корня если нет простых делителей то после него тоже
после этого проверяем делимость данного числа на отрезке от 2 до корня этогоже числа 
если оно делится то проверяем  для его делителя на простоту(если это число делится на какое-то любое число от 2 до корня(делителя)то переходим в следующую i-делителя)
если делителя не нашли случайным образом вводим другое число переходя на отметку 3
другие тоже решается таким же способом
если будут вопросы задавай! 

(6.6k баллов)