Определить, простое или составное введённое число - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Помогите создать программу,которая при введении любого числа показывает: простое или составное это введенное число. (Я пробовал но у меня не получалось. И похоже я вообще не правильно писал код.)

Решение задачи: «Определить, простое или составное введённое число»

textual
Листинг программы
function isSimple(value: cardinal): boolean;
begin
  if value < 2 then
  begin
    Result := false;
    exit;
  end;
  Result := Range(2, Trunc(Sqrt(value))).Where(f -> value mod f = 0).Count = 0;
end;
 
begin
  writeln(isSimple(2147483647));
  for var i:=2 to 100 do
  if not isSimple(i) then Print(i);
end.

Объяснение кода листинга программы

  1. Объявлена функция isSimple, которая принимает целочисленный аргумент value типа cardinal и возвращает логическое значение boolean.
  2. В функции реализован простой проверческий алгоритм определения простого числа:
    • Если число меньше 2, то оно не является простым, и функция возвращает false.
    • Иначе, функция проверяет, делится ли число на какое-либо число в диапазоне от 2 до квадратного корня из value. Если делится, то число составное, и функция возвращает false.
    • Если число не делится ни на одно число в указанном диапазоне, то оно простое, и функция возвращает true.
  3. В основной части программы вызвана функция isSimple с аргументом 2147483647, которое является максимальным значением для cardinal.
  4. В цикле от 2 до 100 выполняется проверка, является ли текущее число простым с помощью функции isSimple. Если число не является простым, то оно выводится на экран.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4 из 5
Похожие ответы