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

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

Задать свой вопрос
1 ответ

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

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

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

// является ли число обычным ?

begin

 if Self lt; 4 then Result := True

 else

 begin

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

   var p := 3;

   while (not found) and (sqr(p) lt;= Self) do

   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 -gt; not t.IsPrime).Println

end.

Просенков Миха
1 не является простым, а у вас "if Self<4"
Эльвира Кибартас
Это почему 1 не является обычным?
Виталька Зерцалов
"Обычное число естественное (целое положительное) число, имеющее ровно два разных естественных делителя единицу и самого себя".
Николай Андриянычев
В силу этого определения, потому что делителей обязано быть ровно два и разных?
Семён Слекишин
Но вообщем-то на простоту инспектируют естественные числа, начинающиеся от 2.
Меланюк Ленка
Да, в силу того, что эти делители обязаны быть разны)
Танюха Робас
В смысле "на простоту проверяют естественные числа, начинающиеся от 2"?
Диана Тесис
Ну да. Но можно поправить, окончательно, добавить проверку на значение 1.
Инна Бердакина
В смысле того, что единицу на простоту не инспектируют обычно..
Anna Krepchuk
Но если модер захочет - даст ответ на исправление, я поправлю.
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт