Duolingo, l'application d'apprentissage des langues, a de nombreux objectifs, mais il y a un problème majeur qui me rend fou. Il me dit combien de jours d'affilée j'ai utilisé l'application avec un message du type " Vous êtes sur une période de 7 jours!" Si on met de côté la césure et si le numéro doit être précisé, cela fonctionne bien pour la plupart des numéros, mais il est incontestablement faux quand il est dit que vous êtes sur une période de 8 jours! Je ne l'utilise pas pour apprendre l'anglais, mais il s'agit toujours d'un comportement malheureux pour une application linguistique.
Vous allez aider l'équipe Duolingo en écrivant un programme complet ou une fonction qui figure si un nombre donné doit être précédée d' un ou une . Un nombre est précédé d' un si sa prononciation en anglais parlé commence par un son de consonne ou semi-vocal , et précédé d' un si sa prononciation commence par un son de voyelle. Ainsi, les seuls numéros précédés d' un sont ceux dont la prononciation commence par huit , onze , dix - huit ou quatre - vingts .
L’équipe de développement de Duolingo a vraisemblablement laissé ce bogue, car elle manquait d’espace pour plus de code source dans l’application; vous devez donc rendre ce code aussi court que possible dans l’espoir de pouvoir le rentrer.
Votre code doit prendre un entier compris entre 0 et 2 147 483 647 et la sortie a
ou an
. Un retour à la ligne est facultatif. Pour les besoins de ce défi, 1863 est lu comme mille huit cent soixante-trois , pas dix-huit cent soixante-trois .
Cas de test:
0 → a
8 → an
11 → an
18 → an
84 → an
110 → a
843 → an
1111 → a
1863 → a
8192 → an
11000 → an
18000 → an
110000 → a
180000 → a
1141592 → a
1897932 → a
11234567 → an
18675309 → an