Diese Frage gestellt wird sehr inspiriert von dem, was @Mego erstellt mit seinen Heiligen und Holier Zahlen, vielen Dank an ihn und seinen Wortspielen.
Heilige Zahlen sind Zahlen, die nur aus den Ziffern mit Löchern bestehen:
04689
Zahlen mit mindestens einer unheiligen Ziffer gelten als unheilig. Unheilige Ziffern sind per Definition böse, aber die Nähe zu heiligen Ziffern hilft ihnen, neutral zu werden. Je näher sie sind, desto weniger unheilig (1, wenn sie benachbart sind).
Die Unheiligkeit einer Zahl ist die Summe der Unheiligkeit ihrer Ziffern, eine Zahl, die nur aus einer unheiligen Zahl besteht, hat eine unendliche Unheiligkeit.
Number :8 5 5 8 7
Digital Unholiness:0+1+1+0+1
Total Unholiness :3
Number :0 1 7 5 5 2 8 5 7
Digital Unholiness:0+1+2+3+2+1+0+1+2
Total Unholiness :12
Number :1 5 7 3 2 1
Digital Unholiness:∞+∞+∞+∞+∞+∞
Total Unholiness :∞
Number :0 4 6 8 9
Digital Unholiness:0+0+0+0+0
Total Unholiness :0
Deine Aufgabe
Sie müssen ein Programm oder eine Funktion schreiben, die eine positive Ganzzahl oder eine Zeichenfolge, die nur aus Ziffern besteht, als Eingabe verwendet und deren Unheiligkeit ausgibt. Wenn Sie eine Ganzzahl als Eingabe verwenden, können Sie davon ausgehen, dass sie niemals einen führenden Wert hat, 0
da Ihre Sprache sie möglicherweise fallen lässt.
Bei unendlicher Unheiligkeit können Sie zwischen drei Ausgängen wählen
- Das Zeichen
∞
(3 Bytes) - Unendliche Ausgabe mit mindestens einer Ziffer ungleich Null, aber nur Ziffern.
- Ein eingebauter
Infinity
Wert.
Dies ist Code-Golf, also gewinnt der kürzeste Code in Byte, viel Glück!
0
heilige Ziffer handelt. Ich werde den Beitrag so ändern, dass eine Antwort auf der Grundlage nicht führender 0-Zahlen möglich ist.
Infinity
Wertes legal?