Bonjour, Je vous propose un nouvel élément à utiliser : Fonction renvoyant un entier sous forme de texte en toutes lettres



La méthode proposée transforme un nombre en lettres. C'est à dire transformer 123 en "cent vingt trois".

Code : Sélectionner tout - Visualiser dans une fenêtre à part
AnsiString __fastcall nombreEnLettres(int n, bool france = true);
n est le nombre à transformer en lettres

France détermine le langage à utiliser. Si france est à true, 70 sera écrit "soixante dix". Si france est à false 70 sera écrit "septante". Par défaut france vaut true s'il n'est pas précisé.



Exemple :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
ShowMessage(nombreEnLettres(5384)); // affiche "cinq mille trois cent quatre-vingt quatre"
ShowMessage(nombreEnLettres(5384, false)); // affiche "cinq mille trois cent octante quatre"

Cette fonction tient compte des cas particuliers du Français :

31 : trente et un

80 : quatre-vingts

81 : quatre-vingt un ( sans 's' et sans 'et' )

200 : deux cents

202 : deux cent deux ( sans 's' )



Qu'en pensez-vous ?