Определите, сколько чисел из входного потока, равно сумме кубов своих цифр - PascalABC.NET

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

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

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

Решение задачи: «Определите, сколько чисел из входного потока, равно сумме кубов своих цифр»

textual
Листинг программы
const
  Q : array ['0'..'9'] of Integer = (0, 1, 8, 27, 64, 125, 216, 343, 512, 729);
  
function SummQ(N : Integer) : Boolean;
begin
  var nStr := N.ToString;
  var Sum  := 0;
  for var i := 1 to nStr.Length do
    Sum += Q[nStr[i]];
  Result := Sum = N;
end;
 
begin
  var N : Integer;
  var Count := 0;
  repeat
    N := ReadLnInteger('N =');
    if (N >= 0) and SummQ(N) then
      begin
        WriteLnFormat('Число {0} равно сумме кубов своих цифр.', N);
        Count += 1;
      end;
  until N < 0;
  WriteLn('Чисел, равных сумме кубов своих цифр: ', Count);
end.

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

  1. Объявлена константа Q, которая содержит значения суммы кубов цифр для каждого числа от 0 до 9.
  2. Объявлена функция SummQ, которая принимает целое число N и возвращает булево значение true, если сумма кубов цифр числа равна самому числу, и false в противном случае. Внутри функции объявлены следующие переменные: a. nStr - строковое представление числа N. b. Sum - переменная для хранения суммы кубов цифр числа N. c. i - цикловой счетчик для прохода по каждому символу строки nStr.
  3. В основной части программы объявлены следующие переменные: a. N - текущее считываемое число. b. Count - количество чисел, равных сумме кубов своих цифр.
  4. В цикле repeat считывается число N с помощью функции ReadLnInteger. Если число N больше или равно 0 и функция SummQ возвращает true, то выводится сообщение о том, что число N равно сумме кубов своих цифр, и к переменной Count прибавляется 1.
  5. Цикл повторяется до тех пор, пока считанное число N не станет отрицательным.
  6. После окончания цикла выводится сообщение о количестве чисел, равных сумме кубов своих цифр.

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


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

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

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