Le but de ce défi est de calculer un type de chiffre de numérologie à partir de chaînes contenant des caractères et des nombres.
- L'entrée peut se faire par n'importe quelle méthode pratique (entrée standard, arguments, fichier séparé).
- L'entrée peut contenir des caractères ASCII imprimables, mais seulement alphanumérique (
A-Z,a-zet0-9) doivent être pris en considération. - La sortie doit être un chiffre entre
1et9ou une étoile*si aucune lettre et aucun chiffre ne sont trouvés ... (ou même0si l'entrée contient un nombre quelconque0et rien d'autre, mais cela n'a pas d'importance). Les valeurs des lettres sont mappées de cette manière:
1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y zLe chiffre de numérologie est calculé en ajoutant chaque valeur de chaîne, puis répétez jusqu'à ce qu'il n'y ait qu'un seul chiffre. Exemple pour
13579,Hello, world!,00 0 00,!@#$%^&*();,et3.141592:13579 => 1 + 3 + 5 + 7 + 9 = 25 => 2 + 5 = 7 Hello, world! => 8 + 5 + 3 + 3 + 6 + 5 + 6 + 9 + 3 + 4 = 52 => 5 + 2 = 7 00 0 00 => 0 + 0 + 0 + 0 + 0 = 0 !@#$%^&*(); => * => * 3.141592 => 3 + 1 + 4 + 1 + 5 + 9 + 2 = 25 => 2 + 5 = 7 3.1415926535897932384 => 3 + 1 + 4 + 1 + 5 + 9 + 2 + 6 + 5 + 3 + 5 + 8 + 9 + 7 + 9 + 3 + 2 + 3 + 8 + 4 = 97 => 9 + 7 = 16 => 1 + 6 = 7(C'est super, la plupart de ces échantillons donnent
7! Mais ce n'est qu'un échantillon;)Quelques tests supplémentaires:
Bob => 2 + 6 + 2 = 10 => 1 + 0 = 1 Charlie => 3 + 8 + 1 + 9 + 3 + 9 + 5 = 38 => 3 + 8 = 11 => 1 + 1 = 2 Anna => 1 + 5 + 5 + 1 = 12 => 1 + 2 = 3 Fana => 6 + 1 + 5 + 1 = 13 => 1 + 3 = 4 Gregory => 7 + 9 + 5 + 7 + 6 + 9 + 7 = 50 => 5 + 0 = 5 Denis => 4 + 5 + 5 + 9 + 1 = 24 => 2 + 4 = 6 Erik => 5 + 9 + 9 + 2 = 25 => 2 + 5 = 7 Helen => 8 + 5 + 3 + 5 + 5 = 26 => 2 + 6 = 8 Izis => 9 + 8 + 9 + 1 = 27 => 2 + 7 = 9
Il s'agit d'un code-golf , donc la réponse la plus courte en octets l'emporte.
Le plus court par langue
1et 9!
!@#$%^&*(); quelque chose qui devrait revenir *.