Паскаль M меньше n, n и m натуральные числа. Вывести на экран числа от m до n которые не...

0 интересует 0 не интересует
55 просмотров

Паскаль M меньше n, n и m натуральные числа. Вывести на экран числа от m до n которые не являются простыми


спросил от (42 баллов) в категории Информатика
1 Ответ
0 интересует 0 не интересует
ответил от БОГ (678k баллов)
 
Лучший ответ

PascalABC.NET 3.4.2, сборка 1884 от 24.11.2018

Внимание! Если программа не работает, обновите версию!

function IsPrime(Self: integer): boolean; extensionmethod;

// является ли число простым ?

begin

 if Self < 4 then Result := True

 else

 begin

   var found := (Self mod 2 = 0);

   var p := 3;

   while (not found) and (sqr(p) <= Self) do</p>

   begin

     found := (Self mod p = 0);

     p += 2

   end;

   Result := not found

 end

end;


begin

 var (m, n) := ReadInteger2('Введите m и n:');

 Range(m, n).Where(t -> not t.IsPrime).Println

end.


image
оставил комментарий от БОГ (678k баллов)
0 0

1 не является простым, а у вас "if Self<4"

оставил комментарий от БОГ (678k баллов)
0 0

Это почему 1 не является простым?

оставил комментарий от БОГ (678k баллов)
0 0

"Простое число — натуральное (целое положительное) число, имеющее ровно два различных натуральных делителя — единицу и самого себя".

оставил комментарий от БОГ (678k баллов)
0 0

В силу этого определения, потому что делителей должно быть ровно два и различных?

оставил комментарий от БОГ (678k баллов)
0 0

Но вообще-то на простоту проверяют натуральные числа, начинающиеся от 2.

оставил комментарий от БОГ (678k баллов)
0 0

Да, в силу того, что эти делители должны быть различны)

оставил комментарий от БОГ (678k баллов)
0 0

В смысле "на простоту проверяют натуральные числа, начинающиеся от 2"?

оставил комментарий от БОГ (678k баллов)
0 0

Ну да. Но можно поправить, конечно, добавить проверку на значение 1.

оставил комментарий от БОГ (678k баллов)
0 0

В смысле того, что единицу на простоту не проверяют обычно..

оставил комментарий от БОГ (678k баллов)
0 0

Но если модератор захочет - даст ответ на исправление, я поправлю.

...