Les nombres heureux

Les nombres sont parfois pourvus de qualificatifs surprenants. Il existe en effet des nombres heureux et des nombre malheureux. Pour savoir si un nombre est heureux, il faut calculer la somme des carrés de ses chiffres, et recommencer avec le résultat. Si on finit par tomber sur 1, alors le nombre est heureux. Sinon, il est malheureux.

Par exemple, le nombre 109 est heureux. En effet :
109 → 12+02+92 = 82 → 82+22 = 68 → 62+82 = 100 → 12+02+02 = 1

Par contre, 106 est malheureux. En effet :
106 → 12+02+62 = 37 → 32+72 = 58 → 52+82 = 89 → 8²+9² = 145 → 1²+4²+5² = 42 → 4²+2² = 20 → 2²+0² = 4 → 4² = 16 → 1²+6² = 37...

Le nombre 37 a déjà été obtenu, en début de séquence, on sait donc que la série 37, 58, 89, 145, 42, 20, 4, 16 va se répéter indéfiniment. Le nombre 1 ne sera donc jamais atteint.

Défi :

L'entrée du problème est la donnée de deux bornes mini et maxi. Il faut répondre en donnant la liste des nombres heureux compris entre ces deux bornes (incluses), par ordre croissant.

Testez votre code :

Par exemple, si les bornes données étaient mini=109 et maxi=141, il faudrait répondre en indiquant : (109, 129, 130, 133, 139)

Ce problème est tiré de c0d1ng UP 2014

Type de retour

Une séquence de nombres entiers

Entrée du problème

  • mini : 8195
  • maxi : 8481

Formulaire de réponse

Vous devez être connecté pour pouvoir répondre aux défis

Tags : cup14 suite arithmétique numérique