Semaine 4, jour 5
This commit is contained in:
28
Semaine_04/Gauvain_BOICHE/exo_01.py
Normal file
28
Semaine_04/Gauvain_BOICHE/exo_01.py
Normal file
@@ -0,0 +1,28 @@
|
||||
def persistance(num: int):
|
||||
"""
|
||||
A partir d'un entier positif, renvoie la persistance multiplicative,
|
||||
à savoir le nombre de fois qu'on peut multiplier les chiffres de l'entier
|
||||
entre eux jusqu'à un résultat d'un seul chiffre.
|
||||
|
||||
Exemples :
|
||||
4 -> 0
|
||||
39 -> 3 (3*9=27, 2*7=14, 1*4=4)
|
||||
"""
|
||||
if num < 0:
|
||||
return "Merci d'utiliser un entier positif."
|
||||
|
||||
steps = 0
|
||||
start = num
|
||||
|
||||
while len(str(num)) > 1:
|
||||
base = 1
|
||||
|
||||
for n in str(num):
|
||||
base *= int(n)
|
||||
|
||||
steps += 1
|
||||
num = base
|
||||
|
||||
if steps == 0:
|
||||
return f"Partant de {start}, pas besoin de multiplication."
|
||||
return f"Partant de {start}, la persistance multiplicative est de {steps} étapes."
|
||||
Reference in New Issue
Block a user