Работа 3.5 Упр.14 Задание 2 ГДЗ Семакин 10 класс (Информатика)
Рассмотрим вариант решения задания из учебника Семакин, Хеннер, Шеина 10 класс, Бином: 14. Натуральное число, в записи которого n цифр, называется числом Армстронга, если сумма его цифр, возведенная в степень n, равна самому числу. Найти все числа Армстронга от 1 до к. *Цитирирование задания со ссылкой на учебник производится исключительно в учебных целях для лучшего понимания разбора решения задания. 10 semakin10 pract/3-5/zad2/14 98
Составим подпрограмму, которая проверяет, является ли число $$i$$ числом Армстронга.
Идея такая:
- находим сумму цифр числа $$s$$;
- находим количество цифр $$a$$;
- возводим сумму цифр в степень $$a$$;
- сравниваем полученное значение с самим числом $$i$$.
Если $$s^a=i$$, то число Армстронга.
Затем перебираем все числа от $$1$$ до $$k$$ и выводим те, для которых функция возвращает true.
var k, i: longint;
function Armstr(i: integer): boolean;
var r, s, t, a, j: longint;
begin
s := (i mod 10);
t := 1;
a := 1;
r := (i div 10);
while r > 0 do
begin
s := s + (r mod 10);
r := (r div 10);
inc(a);
end;
for j := 1 to a do
t := t * s;
if t = i then
Armstr := true
else
Armstr := false;
end;
begin
clrscr;
write(‘K: ‘); readln(k);
for i := 1 to k do
if Armstr(i) then
writeln(i, ‘ ‘);
readln;
end.
Ответ
Программа выводит все числа Армстронга от $$1$$ до $$k$$.