• Напишите функцию, вычисляющую сумму четвертых степеней цифр этого числа. Используя эту функцию, напишите программу, выводящую все числа, равные сумме четвертых степеней своих цифр.

Ответы 1

  • Сумма 4-х степеней N-значного числа не превосходит N * 9^4 < 10000N.С другой стороны, N-значное число больше 10^(N-2).Для того, чтобы одно было равно другому, должно выполниться10^(N - 2) < 10000N, 10^N < N * 10^6.Так может быть, только если N < 7, поэтому ищем числа среди 1..999999.Код:function Sum4Deg(n: integer): integer;var  s: integer;begin  s := 0;  repeat    s := s + sqr(sqr(n mod 10));    n := n div 10;  until n = 0;  Sum4Deg := s;end;var  i: integer;begin  for i := 1 to 999999 do    if i = Sum4Deg(i) then      writeln(i);end.
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years