Breaking

Post Top Ad

Your Ad Spot

martes, 17 de diciembre de 2019

Programa Python para verificar el número de Armstrong

En este ejemplo, aprenderá a verificar si un número entero de n dígitos es un número de Armstrong o no.
Para comprender este ejemplo, debe tener conocimiento de los siguientes temas de programación de Python :
  • Python if ... else Declaración
  • Python mientras Loop
Un número entero positivo se llama número de Armstrong de orden n si
abcd ... = a n + b n + c n + d n + ...
En el caso de un número Armstrong de 3 dígitos, la suma de cubos de cada dígito es igual al número mismo. Por ejemplo:
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 es un número de Armstrong.

Código fuente: Verifique el número de Armstrong (para 3 dígitos)

  1. # Python program to check if the number is an Armstrong number or not
  2. # take input from the user
  3. num = int(input("Enter a number: "))
  4. # initialize sum
  5. sum = 0
  6. # find the sum of the cube of each digit
  7. temp = num
  8. while temp > 0:
  9. digit = temp % 10
  10. sum += digit ** 3
  11. temp //= 10
  12. # display the result
  13. if num == sum:
  14. print(num,"is an Armstrong number")
  15. else:
  16. print(num,"is not an Armstrong number")
Ejecutar código
Salida 1
Ingrese un número: 663
663 no es un número de Armstrong
Salida 2
Ingrese un número: 407
407 es un número de Armstrong
Aquí, le pedimos al usuario un número y verificamos si es un número de Armstrong.
Necesitamos calcular la suma del cubo de cada dígito. Entonces, inicializamos la suma a 0 y obtenemos el número de cada dígito usando el operador de módulo% . El resto de un número cuando se divide por 10 es el último dígito de ese número. Tomamos los cubos usando el operador exponente.
Finalmente, comparamos la suma con el número original y concluimos que es el número de Armstrong si son iguales.

Código fuente: Verifique el número de n dígitos de Armstrong

  1. num = 1634
  2. # Changed num variable to string,
  3. # and calculated the length (number of digits)
  4. order = len(str(num))
  5. # initialize sum
  6. sum = 0
  7. # find the sum of the cube of each digit
  8. temp = num
  9. while temp > 0:
  10. digit = temp % 10
  11. sum += digit ** order
  12. temp //= 10
  13. # display the result
  14. if num == sum:
  15. print(num,"is an Armstrong number")
  16. else:
  17. print(num,"is not an Armstrong number")
Ejecutar código
Puede cambiar el valor de num en el código fuente y ejecutarlo nuevamente para probarlo.

No hay comentarios.:

Publicar un comentario

Dejanos tu comentario para seguir mejorando!

Post Top Ad

Your Ad Spot

Páginas