Напишите программу, которая вводит натуральные числа a и b и выводит все простые числа в...

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

Напишите программу, которая вводит натуральные числа a и b и выводит все простые числа в диапазоне от a до b .
Входные данные:
Входная строка содержит два натуральных числа, a и b . Гарантируется, что a ≤ b .
Выходные данные
Программа должна вывести в одной строке через пробел все простые числа на отрезке [ a , b ] . Если таких чисел нет, программа должна вывести 0.


Информатика (1.6k баллов) | 472 просмотров
Дан 1 ответ
0 голосов

Var
   a,b,d,K,kp:integer;
   P:boolean;
Begin
kp:=0;
ReadLn(a,b);
if (a = 1)or(a = 2) then
   Begin
   kp:=2;
   Write(2,' ',3)
   end
else if a = 3 then
        Begin
        kp:=1;
        Write(3);
        End;
if a < 5 then a:=5
else if a mod 2 = 0 then a:=a+1;
While a<=b do<br>   Begin
   K:=Trunc(Sqrt(A));
   d:=3;
   P:=true;
   While d <= K do<br>      Begin
      if A mod d = 0 then P:=false;
      d:=d+2
      End;
   if P then
      Begin
      kp:=kp+1;
      Write(' ',a);
      End;
   a:=a+2
   End;
if kp = 0 then Write(0)
End.

(6.6k баллов)