Найти и вывести количество тех из чисел, которые являются положительными - Pascal ABC

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

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

Вводятся N произвольных целых чисел. Найти и вывести количество тех из них, которые являются положительными и при этом произведение цифр которых равно самому числу. Помогите пж...

Решение задачи: «Найти и вывести количество тех из чисел, которые являются положительными»

textual
Листинг программы
program digits;
Var
  a,kol,i,n : longint;
 
function f(k:longint):Uint64;
var
  p: Uint64;
begin
  p:=1;
  While k<>0 Do
    Begin
      p:=p*(k mod 10);
      k:=k div 10;
    End;
  f:=p;
end;
 
Begin
  Readln(n);
  for i:=1 to n do
    begin
      readln(a);
      if (a>0) and (a=f(a)) then
        inc(kol);
    end;
  writeln(kol);
  readln;
End.

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

Этот код написан на языке Pascal ABC и выполняет следующую задачу:

  1. Объявляются необходимые переменные: a, kol, i, n, p - все они имеют тип longint.
  2. Определяется функция f(k), которая принимает один параметр типа longint и возвращает один параметр типа Uint64.
  3. В функции f(k) инициализируется переменная p со значением 1.
  4. Затем в функции выполняется цикл While, который продолжается до тех пор, пока k не станет равным нулю.
  5. Внутри цикла выполняется вычисление значения p с использованием операции модуля 10 и деления на 10 для k.
  6. После завершения цикла значение f(k) присваивается переменной f.
  7. В основной части программы считывается количество чисел для анализа (переменная n).
  8. Затем в цикле for перебираются числа от 1 до n.
  9. Для каждого числа a выполняется считывание.
  10. Если число a больше 0 и равно результату вызова функции f(a), то значение переменной kol увеличивается на единицу.
  11. По завершении цикла выводится значение переменной kol.
  12. Программа завершается после считывания всех чисел и вывода результата.

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


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

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

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