Le cifre di un numero minore di 100
n = int(input("n = ")) # 89
decine = n // 10 # 8
unità = n % 10 # 9
print(decine, unità)
Le cifre di un numero minore di 1000
n = int(input("n = ")) # 892
centinaia = n // 100 # 8
x = n // 10 # 89
decine = x % 10 # 9
unità = n % 10 # 2
print(centinaia, decine, unità)
oppure
...
unità = n % 10 # 2
n = n // 10 # 89
decine = n % 10 # 9
centinaia = n // 10 # 8
print(centinaia, decine, unità)
Il resto della divisione per 10 restituisce la cifra delle unità e il quoziente della divisone intera per 10 restituisce le cifre rimanenti.
Stampa le cifre di un numero qualsiasi, dalla meno significativa alla più significativa
...
while(n != 0):
cifra = n % 10
print(cifra)
#-------------
n = n // 10
Calcoli con le cifre
Calcola la somma delle cifre
...
somma = 0
while(n != 0):
cifra = n % 10
somma += cifra
#-------------
n = n // 10
print(somma)
Calcola la somma dei quadrati delle cifre
...
somma = 0
while(n != 0):
cifra = n % 10
somma += cifra**2
#----------------
n = n // 10
print(somma)
Calcola la somma dei cubi delle cifre
???
Calcola il prodotto delle cifre
???
Radice numerica
Si calcola la somma delle cifre e si ripete l’operazione finché non si ottiene un numero minore di 10.
Il valore finale si chiama radice numerica del numero.
...
while(n >= 10):
#-----------------
somma = 0
while(n != 0):
cifra = n % 10
somma += cifra
n = n // 10
#-----------------
n = somma
print(n)
Prova a sommare i quadrati / cubi delle cifre
???
Radice numerica moltiplicativa
Wikipedia > Radice numerica moltiplicativa
Come la radice numerica ma le cifre si moltiplicano
...
while(n >= 10):
#-----------------
prodotto = 1
while(n != 0):
cifra = n % 10
prodotto *= cifra
n = n // 10
#-----------------
n = prodotto
print(n)
Persistenza di un numero
Wikipedia > Persistenza di un numero
Quanti passi sono necessari per arrivare a un valore fisso?
???