Convertir un nombre en son équivalent alphabétique en java
Vous est - t - il déjà arrivé dans l'un de vos multiples projets de vouloir convertir un entier ou un nombre à virgule en son équivalent alphabétique ? Casse - tête n'est ce pas ?
Pas de souci J'ai développé une librairie qui vous facilitera la tâche. Elle s'appelle converter.jar Vous pouvez l'intégrer dans vos projets java en la téléchargeant depuis le lien conveter.jar, ou en l'intégrant dans le fichier pom.xml si vous utilisez maven. Les coordonnées maven de la librairie sont les suivantes:
1 2 3 4 5 | <dependency> <groupId>com.github.royken</groupId> <artifactId>converter</artifactId> <version>1.1</version> </dependency> |
Assez bavardé, passons à des exemples d'illustration.
Utilisation
Soit a le nombre que l'on veut convertir. Il suffit d'entrer le code suivant pour traduire le nombre:1 | FrenchNumberToWords.convert(a); |
1 | EnglishNumberToWords.convert(a); |
Exemple de code complet:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | import com.github.royken.converter.FrenchNumberToWords; public class Main { /** * @param args the command line arguments */ public static void main(String[] args) { System.out.println("*** " + FrenchNumberToWords.convert(0)); System.out.println("*** " + FrenchNumberToWords.convert(5)); System.out.println("*** " + FrenchNumberToWords.convert(17)); System.out.println("*** " + FrenchNumberToWords.convert(25)); System.out.println("*** " + FrenchNumberToWords.convert(75)); System.out.println("*** " + FrenchNumberToWords.convert(80)); System.out.println("*** " + FrenchNumberToWords.convert(83)); System.out.println("*** " + FrenchNumberToWords.convert(97)); System.out.println("*** " + FrenchNumberToWords.convert(100)); System.out.println("*** " + FrenchNumberToWords.convert(101)); System.out.println("*** " + FrenchNumberToWords.convert(110)); System.out.println("*** " + FrenchNumberToWords.convert(120)); System.out.println("*** " + FrenchNumberToWords.convert(200)); System.out.println("*** " + FrenchNumberToWords.convert(201)); System.out.println("*** " + FrenchNumberToWords.convert(232)); System.out.println("*** " + FrenchNumberToWords.convert(999)); System.out.println("*** " + FrenchNumberToWords.convert(1001)); System.out.println("*** " + FrenchNumberToWords.convert(10000)); System.out.println("*** " + FrenchNumberToWords.convert(10001)); System.out.println("*** " + FrenchNumberToWords.convert(100000)); System.out.println("*** " + FrenchNumberToWords.convert(2000000)); System.out.println("*** " + FrenchNumberToWords.convert(3000000000L)); System.out.println("*** " + FrenchNumberToWords.convert(2147483647)); } } |
Le résultat
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | *** zéro *** cinq *** dix-sept *** vingt-cinq *** soixante-quinze *** quatre-vingt *** quatre-vingt-trois *** quatre-vingt-dix-sept *** cent *** cent un *** cent dix *** cent vingt *** deux cents *** deux cent un *** deux cent trente-deux *** neuf cent quatre-vingt-dix-neuf *** mille un *** dix mille *** dix mille un *** cent mille *** deux millions *** trois milliards *** deux milliards cent quarante-sept millions quatre cent quatre-vingt-trois mille six cent quarante-sept |
Pour les nombres à virgules, vous pouvez tronquer le nombre et convertir les deux parties (entière et décimale)
Exemple
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | import com.github.royken.converter.FrenchNumberToWords; /** * * @author Kenfack Valmy-Roi <roykenvalmy@gmail.com> */ public class Main { /** * @param args the command line arguments */ public static void main(String[] args) { double number = 25.87; int entier = (int) Math.floor(number); int decimal = (int) Math.floor((number - entier) * 100.0f); String resultat = FrenchNumberToWords.convert(entier) + "," + FrenchNumberToWords.convert(decimal); System.out.println(resultat); } } |
Le résultat est le suivant:
1 | vingt-cinq,quatre-vingt-sept |
Merci et à bientot pour d'autres astuces.
vous ne l´avez pas en portugais? french, english c bom mais pour nous qui programons en portugais on fait comment?
RépondreSupprimerVraiment , merçi beauçoup ♥
RépondreSupprimerThank's
RépondreSupprimerCe commentaire a été supprimé par l'auteur.
RépondreSupprimermerci, c'est très éfficace
Supprimer