Menu
CoddyTech

Armstrong Number

Um número inteiro positivo é um número de Armstrong quando é igual à soma de seus próprios dígitos, cada um elevado à potência correspondente à quantidade de dígitos que ele tem. 153 tem três dígitos e 1^3 + 5^3 + 3^3 = 153, portanto, é um deles. Escreva uma função que receba n e retorne true se ele for um número de Armstrong e false caso contrário.

Função

isArmstrong(n: integer) → boolean
ninteger
o número inteiro positivo a ser testado
Retornaboolean
verdadeiro quando n é igual à soma de seus dígitos, cada um elevado ao número de dígitos

Restrições

  • 1 ≤ n ≤ 109

Exemplos

Entrada
n = 153
Saída
true
Explicação
153 tem 3 dígitos, então cada dígito é elevado ao cubo: 1 + 125 + 27 = 153. A soma resulta no próprio número, então a resposta é true.

lock icon+31 testes ocultos ao enviar

challenge icon

Para ir além

Apenas 31 números de Armstrong estão entre 1 e 10^9. Você consegue listar todos eles sem testar um bilhão de números, um por um?

Redefinir código
def isArmstrong(n):
    # Escreva o código aqui
Casos de teste

Caso 1

Caso 2

Caso 3

Entrada

n = 153

Esperado

true