Mal was anderes...
Hier mein Lösungsvorschlag:
Spoiler anzeigen
AutoIt
;coded by UEZ
Func HN($n, $iDepth = 0)
If $n = 0 Or $n = 2 Or $n = 4 Or $n = 20 Or $n = 42 Or $n = 145 Or $iDepth > 16 Then Return 0
If $n = 1 Then Return 1
Local $i, $a = StringRegExp($n, "\d", 3), $sum = 0
For $i = 0 To UBound($a) - 1
$sum += $a[$i] * $a[$i]
Next
If $sum = 1 Then Return 1
Return HN($sum, $iDepth + 1)
EndFunc
For $i = 0 To 100
ConsoleWrite("Zahl " & $i & " ist Happy: " & HN($i) & @CRLF)
Next
Alles anzeigen