С применением авторской функции - Pascal ABC
Формулировка задачи:
Составить программу, которая заполняет одномерный массив из 20
элементов случайными целыми числами от 1 до 99, а затем определяет,
сколько в массиве имеется простых чисел (простым числом называется такое,
которое делится только на единицу или само на себя).С применением авторской функции
Решение задачи: «С применением авторской функции»
textual
Листинг программы
program author; function IsPrime(a: integer): boolean; var i, delta: integer; begin a := abs(a); IsPrime := (a > 1) and ((a <= 3) or (a mod 2 <> 0) and (a mod 3 <> 0)); delta := 4; i := 5; while (sqr(i) <= a) and IsPrime do begin IsPrime := IsPrime and (a mod i <> 0); delta := delta xor $06; {смена шага - то 2 то 4} Inc(i, delta); end; end; var a: array [1..20] of integer; i: integer; PrimeCount: integer; begin randomize; for i := 1 to 20 do begin a[i] := 1 + random(99); Write(a[i]: 3); end; writeln; PrimeCount := 0; for i := 1 to 20 do if IsPrime(a[i]) then Inc(PrimeCount); writeln(PrimeCount); end.
Объяснение кода листинга программы
- В функции IsPrime определяется, является ли число простым. Функция принимает число a в качестве параметра и возвращает true, если число простое, и false в противном случае. Переменные i, delta и IsPrime инициализируются.
- В основной программе создается массив a[1..20] из 20 чисел. Каждое число в массиве генерируется случайным образом от 1 до 99. Затем каждое число выводится на экран.
- После вывода чисел начинается цикл, который проверяет каждое число в массиве на простоту с помощью функции IsPrime. Если число простое, то его количество увеличивается на 1.
- После завершения цикла выводится количество простых чисел в массиве.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д