Un nombre heureux est défini par le processus suivant. En commençant par n'importe quel nombre entier positif, remplacez le nombre par la somme des carrés de ses chiffres et répétez le processus jusqu'à ce que le nombre soit égal à 1.quand s'arrêter quand le nombre n'est pas un nombre heureux
Mais lorsque le nombre n'est pas un nombre heureux, il boucle indéfiniment dans un cycle qui ne l'est pas. include 1.
J'ai codé le problème du nombre heureux en python mais le problème est quand un nombre n'est pas content, alors comment pourrais-je arrêter le cycle d'itération. car il ne se terminera pas avec 1 et continuera à se répéter.
def happynumber(number):
while(number!=1):
numberstr = str(number) #converting a number to string
index=0
sum=0
while(index!=len(numberstr)):
sum = sum + int(numberstr[index])*int(numberstr[index])
index = index+1
print sum
number = sum
return number
Pourriez-vous nous montrer ce que vous avez lu? –
Vous devez penser à un moyen de détecter le cycle et de le casser. Cela devrait suffire à faire des devoirs. ;) –
Y a-t-il une limite à la longueur de la séquence avant qu'elle ne répète ou n'atteigne 1? (Je suppose que non, auquel cas c'est un problème difficile.) –