Создать программу которая выведет ** экран простые числа в диапазоне от N до M.N и M -...

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

Создать программу которая выведет на экран простые числа в диапазоне от N до M.N и M - целые числа, которые вводятся с клавиатуры.


Информатика (21 баллов) | 64 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

// PascalABC.NET 3.3, сборка 1576 от 16.11.2017
// Внимание! Если программа не работает, обновите версию!
function Simple(n:integer):boolean;
  begin 
  result := true; 
  if n = 1 then result := false; 
  For var i:= 2 to n div 2 do
    if n mod i = 0 then      result:= false;
  end;
begin
range(readInteger, ReadInteger).Where(t -> Simple(t)).Print
end.

Пример:
1 100
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

(8.8k баллов)
0

Var n, m, i, j, z:integer;
Begin
Write('n=') ;readln(n) ;
Write('m=') ;readln(m) ;
For i:=n to m do
Begin
Z:=0;
For j:=2 to i div 2 do
If i mod j=0 then begin z:=1;break; end;
If z<>1 then writeln(i);
End;
Readln() ;
End.

0

1 лишний readln()

0

и на отрезке 1 ; n выводит "1", а это не простое число

0

Последний readln() для того, чтобы результат сразу видеть. И да, условия не все проставил

0

Вопрос:отрицательные то же в счёт идут?

0

Var n, m, i, j, z:integer;
Begin
Write('n=') ;readln(n) ;
Write('m=') ;readln(m) ;
If n=1 then n:=2;
For i:=n to m do
Begin
Z:=0;
For j:=2 to i div 2 do
If i mod j=0 then begin z:=1;break; end;
If z<>1 then writeln(i);
End;
Readln() ;
End.

0

Danulpopov, на PascalABC, консоль всегда открыта?