English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial di base di Python

Controllo dei flussi in Python

Funzione di Python

Tipi di dati di Python

Operazioni di file in Python

Oggetti e classi in Python

Data e ora in Python

Conoscenze avanzate di Python

Manuale di Python

Programma Python per controllare i numeri di Armstrong

Manuale completo di esempi di Python

In questo esempio, imparerai a controllare se un numero intero a n cifre è un numero di Armstrong.

Per comprendere questo esempio, dovresti conoscere quanto segueProgrammazione PythonArgomento:

Un numero intero positivo è chiamato numero di ordine Armstrong, n se

abcd... = an + bn + cn + dn + ...

Se è un numero Armstrong di 3 cifre, la somma dei cubi di ciascun numero è uguale al numero stesso. Ad esempio:

153 = 1*1*1 + 5*5*5 + 3*3*3 // 153 è un numero Armstrong.

Codice sorgente: Controlla il numero Armstrong (3 cifre)

# Programma di Python per controllare se è un numero Armstrong
# Accetta l'input dell'utente
num = int(input("Inserisci un numero: "))
# Inizializza sum
sum = 0
# Calcola la somma dei cubi di ciascun numero
temp = num
while temp > 0:
   digit = temp % 10
   sum += digit ** 3
   temp //= 10
# Mostra il risultato
if num == sum:
   print(num, "è un numero Armstrong")
else:
   print(num, "non è un numero Armstrong")

Output 1

Inserisci un numero: 456
456 non è un numero Armstrong

Output 2

Inserisci un numero: 407
407 è un numero Armstrong

Qui chiediamo all'utente di inserire un numero e controlliamo se è un numero Armstrong.

Dobbiamo calcolare la somma dei cubi di ciascun numero. Quindi iniziamo la somma a 0 e usiamoOperatore modulo (%)Ottieni ciascun numero. La restituzione del numero diviso per 10 è l'ultimo numero del numero. Utilizziamo l'operatore esponenziale per ottenere dataset multidimensionali.

Infine, confrontiamo la somma con il numero originale per arrivare a una conclusione, se sono uguali, è un numero Armstrong.

Codice sorgente: Controlla se è un numero Armstrong di n cifre

num = 1634
# Converti la variabile num in stringa
# Calcola la lunghezza (numero di cifre)
order = len(str(num))
# Inizializza sum
sum = 0
# Calcola la somma dei cubi di ciascun numero
temp = num
while temp > 0:
   digit = temp % 10
   sum += digit ** order
   temp //= 10
# Mostra il risultato
if num == sum:
   print(num, "è un numero Armstrong")
else:
   print(num, "non è un numero Armstrong")

Puoi modificare il valore di num nella fonte del codice e poi eseguire di nuovo per testarlo.

Manuale completo di esempi di Python