Найдите трехзначные числа, равные сумме кубов своих цифр. Подсчет суммы кубов организовать в виде функции - Pascal ABC
Формулировка задачи:
Найдите трехзначные числа, равные сумме кубов своих цифр. Подсчет суммы кубов организовать в виде функции.
Решение задачи: «Найдите трехзначные числа, равные сумме кубов своих цифр. Подсчет суммы кубов организовать в виде функции»
textual
Листинг программы
function C3( n: integer ): integer ; begin C3 := n*n*n; end; function Sum( a,b,c: integer ): integer ; begin Sum := a + b + c; end; function SumC3( a,b,c: integer ):integer ; begin SumC3 := Sum( C3(a) , C3(b) , C3(c) ); end; var a,b,r: integer ; var i: integer ; begin for i:= 100 to 999 do begin if ( SumC3( i mod 10 , (i div 10) mod 10 , (i div 100) mod 10 ) = i ) then writeln( i ); end; end.
Объяснение кода листинга программы
В данном коде используется язык программирования Pascal ABC. Задача заключается в поиске трехзначных чисел, которые являются суммой кубов своих цифр. Для решения этой задачи были созданы три функции:
- Функция
C3
принимает целочисленный аргументn
и возвращает сумму кубов его цифр. Внутри функции используется рекурсия для вычисления суммы кубов цифр числаn
. - Функция
Sum
принимает три целочисленных аргументаa
,b
иc
и возвращает их сумму. - Функция
SumC3
принимает три целочисленных аргументаa
,b
иc
, которые являются результатом вычисления функцийC3
дляa
,b
иc
. Она также возвращает сумму этих трех чисел. В основной части кода используется циклfor
, который перебирает числа от 100 до 999. Для каждого числа проверяется условие: если число является суммой кубов его цифр, то оно выводится на экран. Переменныеa
,b
иr
используются для хранения цифр числа, а переменнаяi
используется для хранения текущего числа.