Module:Nombre2texte/Data
La documentation pour ce module peut être créée à Module:Nombre2texte/Data/doc
local Data = { }
Data.ordinal = {
'Premier', 'Deuxième', 'Troisième', 'Quatrième', 'Cinquième', 'Sixième', 'Septième', 'Huitième', 'Neuvième', 'Dixième',
'Onzième', 'Douzième', 'Treizième', 'Quatorzième', 'Quinzième', 'Seizième', 'Dix-septième', 'Dix-huitième', 'Dix-neuvième', 'Vingtième',
'Vingt et unième', 'Vingt-deuxième', 'Vingt-troisième', 'Vingt-quatrième', 'Vingt-cinquième', 'Vingt-sixième', 'Vingt-septième', 'Vingt-huitième', 'Vingt-neuvième', 'Trentième',
'Trente et unième', 'Trente-deuxième', 'Trente-troisième', 'Trente-quatrième', 'Trente-cinquième', 'Trente-sixième', 'Trente-septième', 'Trente-huitième', 'Trente-neuvième', 'Quarantième',
'Quarante et unième', 'Quarante-deuxième', 'Quarante-troisième', 'Quarante-quatrième', 'Quarante-cinquième', 'Quarante-sixième', 'Quarante-septième', 'Quarante-huitième', 'Quarante-neuvième', 'Cinquantième',
'Cinquante et unième', 'Cinquante-deuxième', 'Cinquante-troisième', 'Cinquante-quatrième', 'Cinquante-cinquième', 'Cinquante-sixième', 'Cinquante-septième', 'Cinquante-huitième', 'Cinquante-neuvième', 'Soixantième',
'Soixante et unième', 'Soixante-deuxième', 'Soixante-troisième', 'Soixante-quatrième', 'Soixante-cinquième', 'Soixante-sixième', 'Soixante-septième', 'Soixante-huitième', 'Soixante-neuvième', 'Soixante-dixième',
'Soixante et onzième', 'Soixante-douzième', 'Soixante-treizième', 'Soixante-quatorzième', 'Soixante-quinzième', 'Soixante-seizième', 'Soixante-dix-septième', 'Soixante-dix-huitième', 'Soixante-dix-neuvième', 'Quatre-vingtième',
'Quatre-vingt-unième', 'Quatre-vingt-deuxième', 'Quatre-vingt-troisième', 'Quatre-vingt-quatrième', 'Quatre-vingt-cinquième', 'Quatre-vingt-sixième', 'Quatre-vingt-septième', 'Quatre-vingt-huitième', 'Quatre-vingt-neuvième', 'Quatre-vingt-dixième',
'Quatre-vingt-onzième', 'Quatre-vingt-douzième', 'Quatre-vingt-treizième', 'Quatre-vingt-quatorzième', 'Quatre-vingt-quinzième', 'Quatre-vingt-seizième', 'Quatre-vingt-dix-septième', 'Quatre-vingt-dix-huitième', 'Quatre-vingt-dix-neuvième', 'Centième',
'Cent-unième', 'Cent-deuxième', 'Cent-troisième', 'Cent-quatrième', 'Cent-cinquième', 'Cent-sixième', 'Cent-septième', 'Cent-huitième', 'Cent-neuvième', 'Cent-dixième',
'Cent-onzième', 'Cent douzième', 'Cent-treizième', 'Cent-quatorzième', 'Cent-quinzième', 'Cent-seizième', 'Cent dix-septième', 'Cent dix-huitième', 'Cent dix-neuvième', 'Cent vingtième',
'Cent vingt et unième', 'Cent vingt-deuxième', 'Cent vingt-troisième', 'Cent vingt-quatrième', 'Cent vingt-cinquième', 'Cent vingt-sixième', 'Cent vingt-septième', 'Cent vingt-huitième', 'Cent vingt-neuvième', 'Cent trentième',
'Cent trente et unième', 'Cent trente-deuxième', 'Cent trente-troisième', 'Cent trente-quatrième', 'Cent trente-cinquième', 'Cent trente-sixième', 'Cent trente-septième', 'Cent trente-huitième', 'Cent trente-neuvième', 'Cent quarantième',
'Cent quarante et unième', 'Cent quarante-deuxième', 'Cent quarante-troisième', 'Cent quarante-quatrième', 'Cent quarante-cinquième', 'Cent quarante-sixième', 'Cent quarante-septième', 'Cent quarante-huitième', 'Cent quarante-neuvième', 'Cent-cinquantième',
'Cent cinquante-et-unième', 'Cent-cinquante-deuxième', 'Cent-cinquante-troisième', 'Cent-cinquante-quatrième', 'Cent-cinquante-cinquième', 'Cent-cinquante-sixième', 'Cent cinquante-septième', 'Cent cinquante-huitième', 'Cent cinquante-neuvième', 'Cent-soixantième',
'Cent soixtante-et-unième', 'Cent-soixante-deuxième', 'Cent soixante-troisième', 'Cent-soixante-quatrième', 'Cent soixante-cinquième', 'Cent-soixante-sixième', 'Cent soixante-septième', 'Cent soixante-huitième', 'Cent soixante-neuvième', 'Cent-soixante-dixième',
'Cent soixante-et-onzième', 'Cent-soixante-douzième', 'Cent soixante-treizième', 'Cent-soixante-quatorzième', 'Cent-soixante-quinzième', 'Cent-soixante-seizième', 'Cent-soixante-dix-septième', 'Cent-soixante-dix-huitième', 'Cent-soixante-dix-neuvième', 'Cent-quatre-vingtième',
'Cent-quatre-vingt-unième', 'Cent-quatre-vingt-deuxième', 'Cent-quatre-vingt-troisième', 'Cent-quatre-vingt-quatrième', 'Cent-quatre-vingt-cinquième', 'Cent-quatre-vingt-sixième', 'Cent-quatre-vingt-septième', 'Cent-quatre-vingt-huitième', 'Cent-quatre-vingt-neuvième', 'Cent quatre-vingt-dixième',
'Cent quatre-vingt-onzième', 'Cent quatre-vingt-douzième', 'Cent quatre-vingt-treizième', 'Cent quatre-vingt-quatorzième', 'Cent quatre-vingt-quinzième', 'Cent quatre-vingt-seizième', 'Cent quatre-vingt-dix-septième', 'Cent quatre-vingt-dix-huitième', 'Cent quatre-vingt-dix-neuvième', 'Deux centième',
[250] = 'Deux cent cinquantième',
[300] = 'Trois centième',
[400] = 'Quatre centième',
[500] = 'Cinq centième',
[600] = 'Six centième',
[700] = 'Sept centième',
[800] = 'Huit centième',
[900] = 'Neuf centième',
[999] = 'Neuf-cent-quatre-vingt-dix-neuvième',
[1000] = 'Millième',
[2000] = 'Deux millième',
[2500] = 'Deux mille cinq centième',
[3000] = 'Trois millième',
[4000] = 'Quatre millième',
[5000] = 'Cinq millième',
[10000] = 'Dix millième',
[100000] = 'Cent millième',
[1000000] = 'Millionième',
}
--[[
Données utilisées pour la fonction nombre2texte()
--]]
-- test d'une nouvelle approche : un peu plus gourmande en mémoire mais nettement plus rapide
Data.infcent = {
"un", "deux", "trois", "quatre", "cinq",
"six", "sept", "huit", "neuf", "dix",
"onze", "douze", "treize", "quatorze", "quinze",
"seize", "dix-sept", "dix-huit", "dix-neuf", "vingt",
"vingt et un", "vingt-deux", "vingt-trois", "vingt-quatre", "vingt-cinq",
"vingt-six", "vingt-sept", "vingt-huit", "vingt-neuf", "trente",
"trente et un", "trente-deux", "trente-trois", "trente-quatre", "trente-cinq",
"trente-six", "trente-sept", "trente-huit", "trente-neuf", "quarante",
"quarante et un", "quarante-deux", "quarante-trois", "quarante-quatre", "quarante-cinq",
"quarante-six", "quarante-sept", "quarante-huit", "quarante-neuf", "cinquante",
"cinquante et un", "cinquante-deux", "cinquante-trois", "cinquante-quatre", "cinquante-cinq",
"cinquante-six", "cinquante-sept", "cinquante-huit", "cinquante-neuf", "soixante",
"soixante et un", "soixante-deux", "soixante-trois", "soixante-quatre", "soixante-cinq",
"soixante-six", "soixante-sept", "soixante-huit", "soixante-neuf", "soixante-dix",
"soixante et onze", "soixante-douze", "soixante-treize", "soixante-quatorze", "soixante-quinze",
"soixante-seize", "soixante-dix-sept", "soixante-dix-huit", "soixante-dix-neuf", "quatre-vingts",
"quatre-vingt-un", "quatre-vingt-deux", "quatre-vingt-trois", "quatre-vingt-quatre", "quatre-vingt-cinq",
"quatre-vingt-six", "quatre-vingt-sept", "quatre-vingt-huit", "quatre-vingt-neuf", "quatre-vingt-dix",
"quatre-vingt-onze", "quatre-vingt-douze", "quatre-vingt-treize", "quatre-vingt-quatorze", "quatre-vingt-quinze",
"quatre-vingt-seize", "quatre-vingt-dix-sept", "quatre-vingt-dix-huit", "quatre-vingt-dix-neuf"
}
-- l'odre à tester est ch → be → fr
-- forme uniquement en suisse (a priori)
Data.infcent_ch = {
[80] = "huitante", [81] = "huitante un", [82] = "huitante deux", [83] = "huitante trois", [84] = "huitante quatre",
[85] = "huitante cinq", [86] = "huitante six", [87] = "huitante sept", [88] = "huitante huit", [89] = "huitante neuf"
}
-- idem, mais avec la variante huitante (à la place de octante), forme uniquement en suisse (a priori)
Data.infcent_ch2 = {
[80] = "octante", [81] = "octante un", [82] = "octante deux", [83] = "octante trois", [84] = "octante quatre",
[85] = "octante cinq", [86] = "octante six", [87] = "octante sept", [88] = "octante huit", [89] = "octante neuf"
}
-- forme en suisse et en belgique (a priori)
Data.infcent_be = {
[70] = "septante", [71] = "septante et un", [72] = "septante deux", [73] = "septante trois", [74] = "septante quatre",
[75] = "septante cinq", [76] = "septante six", [77] = "septante sept", [78] = "septante huit", [79] = "septante neuf",
[90] = "nonante", [91] = "nonante et un", [92] = "nonante deux", [93] = "nonante trois", [94] = "nonante quatre",
[95] = "nonante cinq", [96] = "nonante six", [97] = "nonante sept", [98] = "nonante huit", [99] = "nonante neuf"
}
-- les multiples
Data.sup = {
"unité", "mille", "million", "milliard"
}
-- conversions en "ième"
Data.iemes = {
["un"] = "unième", ["deux"] = "deuxième", ["trois"] = "troisième",
["quatre"] = "quatrième", ["cinq"] = "cinquième", ["six"] = "sixième",
["sept"] = "septième", ["huit"] = "huitième", ["neuf"] = "neuvième",
["dix"] = "dixième", ["onze"] = "onzième", ["douze"] = "douzième",
["treize"] = "treizième", ["quatorze"] = "quatorzième", ["quinze"] = "quinzième",
["seize"] = "seizième", ["vingt"] = "vingtième", ["trente"] = "trentième",
["quarante"] = "quarantième", ["cinquante"] = "cinquantième", ["soixante"] = "soixantième",
["cent"] = "centième", ["mille"] = "millième", ["million"] = "millionième",
["milliard"] = "milliardième", ["septante"] = "septantième", ["octante"] = "octantième",
["huitante"] = "huitantième", ["nonante"] = "nonantième",
-- les quelques pluriels
["vingts"] = "vingtième", ["cents"] = "centième",
["millions"] = "millionième", ["milliards"] = "milliardième"
}
--[[
Fin des données pour nombre2texte()
--]]
return Data