Réponse acceptée !
Salut,
Alors tiens j'ai réfléchis 30 sec sur ton prob, cependant c'est qu'une ébauche ( ya surement moyen de faire mieux ), puis il marche pas pour tout les chiffres ( ex : 91 = quatre-vingt dix un ), mais bon si cela peit t'aider
#include stdio.h
int main(void){
string lettre;
int temp;
printf("entrez un chiffre"/n);
scanf("%d", chiffre);
temp = chiffre / 100; // int / int = int : cela te donne le modulo 100
switch (temp){
case 1 : lettre = lettre + " cent";
break;
case 2 : lettre = lettre + " deux cent(s)"; // (s)->revoir sa gramaire :p
break;
...
case 9 : lettre = lettre + " neuf cent(s);
break;
}
chiffre -= temp*100; // comme ça il te reste que les dizaine
temp = chiffre / 10; // int / int = int : cela te donne le modulo 10
switch (temp){
case 1 : lettre = lettre + " dix"; //la problème pour 11, 12, ...
break;
case 2 : lettre = lettre + " vingt";
break;
...
case 9 : lettre = lettre + " quatre-vingts dix"; // la problème pour 91, 92 ...
break;
}
...
return 0;
}
Voilà l'algo est simple mais pas terrible, le mieux serait de faire un arbre où chaque aurait 10 branches, et ainsi on peut connaitre le chiffre précédent ce qui permet de combler le problème de cet algo. En effet si tu sais qu'avant tu as dix et maintenant un ba tu mets onze pas dix un.
Enfin à toi de continuer, on va pas tout te faire non plus lol
allez bon courage
N'oubliez pas de cliquer sur réponse acceptée si la réponse vous convient !!!