[c unix] nombres en lettres
Fermé
fredo10
Messages postés
31
Date d'inscription
vendredi 25 novembre 2005
Statut
Membre
Dernière intervention
4 février 2006
-
3 déc. 2005 à 20:38
mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 - 5 déc. 2005 à 00:12
mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 - 5 déc. 2005 à 00:12
A voir également:
- [c unix] nombres en lettres
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Code binaire des nombres - Guide
- Application pour écrire les chiffre en lettre - Télécharger - Outils professionnels
- En raison d'un nombre important d'échec de connexion snapchat - Forum Snapchat
- Triez la liste comme sur cette illustration (attention, on ne voit que le début …). quel est le mot formé par les 6 dernières lettres de la colonne code ? - Forum Excel
4 réponses
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
4 déc. 2005 à 01:04
4 déc. 2005 à 01:04
En fait il faut découper le nombre par tranches de trois décimales en partant du "." : ainsi, si l'on sait traité les nombres de à à 999 il est facile de gérer les milliers, les millions etc...
Reste à gérer les nombre de à à 999. Si l'on sait compter de 0 à 99, il est très facile de compter dès lors jusqu'à 999 en rajoutant le bon brefixe pour le chiffre des centaines.
Le problème se réduit donc à traiter les nombres de 0 à 99. Pour les chiffres de 0 à 20, en effet il faut être exhaustif. Pour les suivants, il suffit de regarder le chiffre des dizaines (>2) :
3x -> trente
4x -> quarante
...
Ensuite il suffit de regarder le chiffre des unités pour obtenir le suffixe de ton nombre :
x1 -> -et-un
x2 -> -deux
x3 -> -trois
...
Voire :
x1 -> -et-un
xy -> -y (en faisant appel à la fonction qui convertit à 0<=y<=9 en entier)
Ainsi :
La fin est facile ;-)
Bonne chance
Reste à gérer les nombre de à à 999. Si l'on sait compter de 0 à 99, il est très facile de compter dès lors jusqu'à 999 en rajoutant le bon brefixe pour le chiffre des centaines.
Le problème se réduit donc à traiter les nombres de 0 à 99. Pour les chiffres de 0 à 20, en effet il faut être exhaustif. Pour les suivants, il suffit de regarder le chiffre des dizaines (>2) :
3x -> trente
4x -> quarante
...
Ensuite il suffit de regarder le chiffre des unités pour obtenir le suffixe de ton nombre :
x1 -> -et-un
x2 -> -deux
x3 -> -trois
...
Voire :
x1 -> -et-un
xy -> -y (en faisant appel à la fonction qui convertit à 0<=y<=9 en entier)
Ainsi :
char *to_string_0_9(unsigned int i){ switch(i){ case 0 : return "zero"; case 1 : return "un"; //... case 9 : return "neuf"; default : break; } return ""; } char *to_string_10_19(unsigned int){ switch(i){ case 10 : return "dix"; case 11 : return "onze"; //... } return "" } char *to string_20_99(unsigned int i){ char buf[255]; unsigned int unite,dizaine=floor(i/10); if (dizaine > 9 || dizaine <2 ) return ""; int unite=i-dizaine*10; switch(dizaine){ case 3 : buf="trente" //... } switch(unite){ case 1 : strcat(buf,"-et-un"); case 2 : strcat(buf,"-deux"); //... } return &buf[0]; //enfin je crois } char *to_string_0_99(unsigned int){ if (0<=i && i<9) return to_string_0_9(i); else if (10<=i && i<19) return to_string_10_19(i); else if (20<=i && i<99) return to_string_20_99(i); else return ""; }
La fin est facile ;-)
Bonne chance
a mon avis tout ses fonctions c'est pour compliquer les choses
parceque a chaque nombre est associer une phrase unique
1: un
2:deux
/
/etc
je pense que c'est mieux de faire entrer tout les phrases associer aux nombres "un, deux trois , ..."
idées de ++++
parceque a chaque nombre est associer une phrase unique
1: un
2:deux
/
/etc
je pense que c'est mieux de faire entrer tout les phrases associer aux nombres "un, deux trois , ..."
idées de ++++
a mon avis tout ses fonctions c'est pour compliquer les choses
parceque a chaque nombre est associer une phrase unique
1: un
2:deux
/
/etc
je pense que c'est mieux de faire entrer tout les phrases associer aux nombres "un, deux trois , ..."
idées de ++++
parceque a chaque nombre est associer une phrase unique
1: un
2:deux
/
/etc
je pense que c'est mieux de faire entrer tout les phrases associer aux nombres "un, deux trois , ..."
idées de ++++
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
5 déc. 2005 à 00:12
5 déc. 2005 à 00:12
ouais et onze ?
et quatre vingt quatorze ?
et quatre vingt quatorze ?