Как проверить число Армстронга

Число Армстронга равно сумме собственных цифр, возведённых в степень количества цифр. У числа 153 три разряда, поэтому проверка выглядит так: 1³ + 5³ + 3³ = 1 + 125 + 27 = 153. Равенство выполняется, значит, 153 относится к числам Армстронга. Калькулятор показывает степень, каждое слагаемое и точную сумму.
Число Армстронга, или нарциссическое число, в десятичной системе удовлетворяет равенству между самим числом и суммой k-х степеней его цифр, где k равно количеству цифр.
Общее определение записывается так:
Здесь k обозначает количество десятичных цифр нормализованного числа, а dᵢ обозначает отдельную цифру от 0 до 9. Для 1634 показатель степени равен 4: 1⁴ + 6⁴ + 3⁴ + 4⁴ = 1 + 1296 + 81 + 256 = 1634. Если сумма отличается хотя бы на единицу, число не проходит проверку.
Почему степень зависит от длины числа
Одни и те же цифры дают разные слагаемые при разной длине записи. В трёхзначном числе цифра 5 превращается в 5³ = 125, а в четырёхзначном в 5⁴ = 625. Поэтому нельзя использовать постоянный квадрат или куб для всех значений. Сначала нормализуется запись и определяется k, затем каждая цифра возводится именно в степень k.
Ведущие нули не считаются разрядами обычной записи числа. Ввод 000153 нормализуется до 153, получает k = 3 и проходит ту же проверку. Запись из одних нулей превращается в 0 с одной цифрой. Получаем 0¹ = 0, поэтому ноль считается числом Армстронга.
Все однозначные числа от 0 до 9 подходят автоматически. Для них k = 1, а d¹ = d. Уже среди двузначных чисел совпадений нет: например, 10 даёт 1² + 0² = 1. С увеличением разрядности условие становится редким, потому что сумма степеней должна точно попасть в исходную запись.
Примеры, на которых видна механика
🎯 Число 153. Три цифры задают третью степень. Сумма 1³ + 5³ + 3³ равна 153, поэтому проверка заканчивается точным равенством. Это самый компактный пример после однозначных чисел и удобный тест для собственной программы.
🧩 Три соседних примера 370, 371 и 407. Все они являются числами Армстронга: 3³ + 7³ + 0³ = 370, 3³ + 7³ + 1³ = 371, а 4³ + 0³ + 7³ = 407. Ноль добавляет слагаемое 0, но остаётся полноценной цифрой в трёхзначной записи.
🏗️ Четырёхзначное число 1634. Здесь нужны четвёртые степени. Получаем 1 + 1296 + 81 + 256 = 1634. Если по привычке взять кубы, сумма будет другой, поэтому количество разрядов нужно определить до вычисления.
⚖️ Число 8208. Проверка 8⁴ + 2⁴ + 0⁴ + 8⁴ даёт 4096 + 16 + 0 + 4096 = 8208. Две одинаковые восьмёрки учитываются дважды: формула работает с позициями цифр, а не с набором уникальных значений.
🔍 Соседи 9474 и 9475. Первое число проходит проверку, потому что 9⁴ + 4⁴ + 7⁴ + 4⁴ = 9474. Замена последней цифры на 5 меняет и исходное число, и последнее слагаемое: сумма становится 9843, а не 9475. Близкая запись не означает близкий результат.
🧹 Ввод 000153. Ведущие нули удаляются до определения степени. Калькулятор проверяет 153 как трёхзначное число, а не как шестизначное. Это помогает при данных из таблиц, где поле дополняют нулями до фиксированной ширины.
💾 Значение длиннее 15 цифр. Обычный тип Number в JavaScript точно хранит целые только до 9 007 199 254 740 991. Калькулятор использует BigInt, поэтому сравнивает полную десятичную запись и сумму степеней без округления до заявленного предела в 100 значащих цифр.
Как интерпретировать результат
Вердикт отвечает только на одно условие: совпадает ли число с суммой k-х степеней своих цифр. Он ничего не говорит о простоте, делимости или количестве множителей. Например, 153 является числом Армстронга, но делится на 3, 9 и 17. Количество положительных чисел, взаимно простых с заданным n, находит отдельный калькулятор функции Эйлера.
Точная сумма под результатом помогает отличить ошибку ввода от близкого несовпадения. Для 9475 показано 9843, поэтому видно не только «нет», но и величину расхождения 368. Для длинной записи интерфейс сокращает перечень одинаковых по структуре слагаемых, однако итоговая сумма вычисляется по всем цифрам и выводится полностью.
В десятичной системе последовательность конечна: она содержит 88 чисел Армстронга, а крупнейшее из них имеет 39 цифр. Предел ввода 100 цифр поэтому покрывает всю известную десятичную последовательность и позволяет проверять произвольные большие кандидаты. Сам алгоритм не сверяется с готовым списком: он каждый раз выполняет определение через степени.
Сумма цифр без возведения в степень решает другую задачу. Её повторяют до одного знака в калькуляторе цифрового корня. У 153 обычная сумма равна 9, а сумма кубов равна 153. Совпадение числа Армстронга возникает именно из-за степени k.
Важно! Принимаются только неотрицательные целые числа. Минус, пробел внутри записи, дробная часть и экспоненциальная форма считаются ошибкой. Ограничение в 100 цифр проверяется после удаления ведущих нулей.
Вопросы о числах Армстронга
Ответы поясняют роль нуля, выбор степени и точность больших вычислений, чтобы результат не спутали с проверкой простоты или обычной суммой цифр.
Почему все однозначные числа являются числами Армстронга?
У однозначного числа k = 1. Любая цифра d в первой степени равна самой себе, поэтому d¹ = d для значений от 0 до 9.
Считается ли ноль числом Армстронга?
Да. После нормализации запись 0 содержит одну цифру, а 0¹ = 0. Записи 00 и 000 дают тот же результат.
Как выбрать степень для проверки?
Посчитайте цифры обычной записи без ведущих нулей. У 153 степень равна 3, у 1634 равна 4, у нуля равна 1.
Почему ведущие нули не увеличивают степень?
Они служат форматированием поля, но не меняют числовое значение. Поэтому 000153 проверяется как трёхзначное число 153.
Бывают ли отрицательные числа Армстронга?
Стандартное десятичное определение использует неотрицательные целые числа и их цифры. Этот калькулятор знак минус не принимает.
Есть ли двузначные числа Армстронга?
Нет. Для чисел от 10 до 99 сумма квадратов цифр не совпадает с исходным числом. После однозначных значений следующий пример равен 153.
Зачем калькулятору BigInt?
Степени цифр и их сумма могут выйти за точный диапазон обычного Number. BigInt сохраняет каждую цифру целого результата и позволяет сравнить значения без округления.
Есть ли числа Армстронга длиннее 39 цифр?
В десятичной системе нет. Полная последовательность содержит 88 значений, а крупнейшее из них имеет 39 цифр. Лимит 100 цифр заведомо покрывает этот диапазон.
Похожие калькуляторы
Возможно вам пригодятся ещё несколько калькуляторов по данной теме:
- Цифровой корень. Введите целое число длиной до 10 000 цифр. Калькулятор будет складывать цифры, пока не останется одна.
- Проверка простого числа. Введите целое число от 0 до 1 000 000 000 000. Для составного числа калькулятор покажет несколько делителей.
- Делители числа. Введите натуральное число до 1 000 000 000 000. Калькулятор выпишет положительные делители, их количество и сумму.
- Обычный калькулятор. Просто посчитайте чего вы там хотели.
- Рандомайзер: генератор случайных чисел. Выберите случайное число в нужном диапазоне для любых целей, в частности для розыгрышей и онлайн-лотерей в соцсетях.
- Бросить монетку онлайн. С помощью данной формы вы можете подбросить монетку онлайн любое количество раз.
- Калькулятор корней. Найдите правильное решение корней n-степени, включая квадратные и кубические.
- Калькулятор дробей. Выполните сложение, умножение, сокращение обыкновенных дробей.
- Калькулятор квадратных уравнений. Решите квадратные уравнения с помощью специальных формул, через дискриминант и по теореме Виета. Все способы решения сопровождаются примерами.
- Калькулятор сложного процента. Рассчитайте на инвесткалькуляторе сумму, полученную в результате применения сложного процента с реинвестированием, регулярным пополнением, капитализацией и с примерами.
Есть что добавить?
Напишите своё мнение, комментарий или предложение.