Een happy priemgetal is een getal dat zowel ‘happy’ als ‘priem’ is. Een ‘happy’ getal is een getal dat uiteindelijk resulteert in het getal 1 als je herhaaldelijk de som neemt van de kwadraten van de afzonderlijke cijfers. Zo krijg je bijvoorbeeld dat 19 een happy getal is, want
\[\mathsf{1^2 + 9^2 = 82} \text{, } \mathsf{8^2 + 2^2 = 68} \text{, } \mathsf{6^2 + 8^2 = 100} \text{ en } \mathsf{1^2 + 0^2 + 0^2 = 1}\]De functie is_priem werd al gegeven. Schrijf nu ook de functie is_happy(getal) die controleert of een getal een happy getal is. Je mag na 50 keer de getallen samentellen ervan uitgaan dat het getal niet happy is.
Schrijf daarna een hoofdprogramma dat aan de gebruiker vraagt om een (geheel) getal in te vullen, waarvan jij bepaalt of dit een happy priemgetal is.
Indien de gebruiker 7 invult, verschijnt er
7 is een happy priemgetal.
Indien de gebruiker 11 invult, verschijnt er
11 is geen happy priemgetal.