Чотиризначні числа Армстронга#8642

Чотиризначні числа Армстронга (Розбір)

Переберем числа від до . Для кожного числа i = \overline{xyzu}~(a ≤ i ≤ b) виділимо цифри тисяч , сотень , десятків і одиниць . Якщо число є числом Армстронга (i = x^4 + y^4 + z^4 + u^4), то виводимо його.

Реалізація алгоритму

Зчитаємо вхідні дані.

scanf("%d %d", &a, &b);

Перебираємо числа від до .

for (i = a; i <= b; i++)
{

Виділяємо цифри числа i = \overline{xyzu}.

  x = a / 1000;
  y = i / 100 % 10;
  z = i / 10 % 10;
  u = i % 10;

Якщо число є числом Армстронга (i = x^4 + y^4 + z^4 + u^4), виводимо його.

  if (x * x * x * x + y * y * y * y + z * z * z * z + 
      u * u * u * u == i) printf("%d ", i);
}

printf("\n");

Реалізація на Python

Зчитаємо вхідні дані.

a, b = map(int, input().split())

Перебираємо числа від до .

for i in range(a, b + 1):

Виділяємо цифри числа i = \overline{xyzu}.

  x = i // 1000
  y = (i // 100) % 10
  z = (i // 10) % 10
  u = i % 10

Якщо число є числом Армстронга (i = x^4 + y^4 + z^4 + u^4), виводимо його.

  if x**4 + y**4 + z**4 + u**4 == i:
    print(i, end=" ")

print()