Somma delle cifre

Esempio 1

Le cifre di un numero minore di 100

n      = int(input("n = "))  # 89
decine = n // 10             # 8
unità  = n %  10             # 9

print(decine, unità)

Esempio 2

Le cifre di un numero minore di 1000

...
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.

Soluzione

Stampa le cifre di un numero qualsiasi, dalla meno significativa alla più significativa

...
while(n != 0):
    cifra = n % 10
    print(cifra, end=" ")
    #--------------------
    n = n // 10

Calcoli con le cifre

Calcola la somma delle cifre

...
somma = 0
while(n != 0):
    cifra  = n % 10
    somma += cifra        
    print(cifra, somma, sep="\t")
    #----------------------------
    n = n // 10

Calcola la somma dei quadrati delle cifre

...
somma = 0
while(n != 0):
    cifra  = n % 10
    somma += cifra**2
    print(cifra, somma, sep="\t")        
    #----------------------------
    n = n // 10

Calcola la somma dei cubi delle cifre

???

Calcola il prodotto delle cifre

???

Radice numerica

Wikipedia > 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
    print(somma, end=" ")
    #-----------------
    n = somma

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
    print(prodotto, end=" ")
    #-----------------
    n = prodotto

Persistenza di un numero

Wikipedia > Persistenza di un numero

Quanti passi sono necessari per arrivare a un valore fisso?

???