Подсчитать количество простых чисел в десятичной записи натурального числа n - Pascal
Формулировка задачи:
Составить программу, которая подсчитывает количество простых чисел в десятичному записи натурального числа n. Напечатать числа, которые являются простыми, расположив их в порядке возрастания. Использовать множества.
Решение задачи: «Подсчитать количество простых чисел в десятичной записи натурального числа n»
textual
Листинг программы
Var n,k,i:integer; mn:set of byte; Function F(n:integer):boolean; Var i:integer; b:boolean; Begin b:=true; For i:=2 to n div 2 do if n mod i = 0 then b:=false; F:=(b)and(n<>0)and(n<>1); End; Begin write('Введите число n: ');readln(n); n:=abs(n);mn:=[]; While n>0 do Begin if F(n mod 10) then Begin inc(k); mn:=mn+[n mod 10]; End; n:=n div 10; End; writeln('Простых цифр = ',k); For i:=2 to 9 do if i in mn then write(i:2); readln; End.
Объяснение кода листинга программы
- Введенный пользователем вводится в переменную n.
- Переменная n приводится к абсолютному значению.
- Переменная mn инициализируется пустым множеством.
- Цикл выполняется, пока n не станет равным 0.
- Внутри цикла проверяется, является ли n%10 простым числом.
- Если n%10 является простым числом, то к переменной k прибавляется единица и n%10 добавляется в множество mn.
- n делится на 10.
- После окончания цикла выводится количество простых цифр.
- Выводится второе сообщение, содержащее простые цифры, используя цикл от 2 до 9 и проверяя, принадлежит ли цифра множеству mn.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д