1-11 класс
  • 1-11 класс
  • 1 класс
  • 2 класс
  • 3 класс
  • 4 класс
  • 5 класс
  • 6 класс
  • 7 класс
  • 8 класс
  • 9 класс
  • 10 класс
  • 11 класс
Выберите класс
Предметы
Семакин
Работа 3.5 Упр.14 Задание 2 ГДЗ Семакин 10 класс (Информатика)
Семакин, Хеннер, Шеина
10 класс
Класс
10
Предмет
Информатика
Автор
Семакин, Хеннер, Шеина

Работа 3.5 Упр.14 Задание 2 ГДЗ Семакин 10 класс (Информатика)

Задача

Натуральное число, в записи которого $$n$$ цифр, называется числом Армстронга, если сумма его цифр, возведённая в степень $$n$$, равна самому числу. Найти все числа Армстронга от 1 до $$к$$.

Подробный ответ

Составим подпрограмму, которая проверяет, является ли число $$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$$.



Общая оценка
3.8 / 5
Другие учебники
Другие предметы