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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| import os
list1 = ["", "un", "deux", "trois", "quatre", "cinq", "six", "sept", "huit", "neuf"]
list2 = ["dix", "onze", "douze", "treize", "quatorze", "quinze", "seize", "dix sept", "dix huit", "dix neuf"]
list3 = ["", "dix", "vingt", "trente", "quarante", "cinquante", "soixante", "soixante", "quatre vingt", "quatre vingt"]
list4 = ["mille", "million", "milliard"]
nb = 0
def convNbToLetter(nb):
conv = ''
i = True
while i :
nb = int(input("choisissez un nb : "))
if nb != 0:
millier = nb //1000
centaine = (nb - millier * 1000)//100
dizaine = (nb -millier * 1000 - centaine * 100) // 10
unite = nb - millier*1000 - centaine*100- dizaine*10
if millier == 1 : conv += list4[0]
elif millier in [2,3,4,5,6,7,8,9]: conv += list1[millier] + " " + list4[0]
if centaine == 1: conv += " cent"
elif centaine != 0:
conv += " " + list1[centaine] + " cent"
if dizaine == 0 and unite == 0: conv+="s"
if dizaine not in [0,1]:
conv += " " + list3[dizaine]
if unite == 0:
if dizaine in [1, 7, 9]: conv += " dix"
elif dizaine == 8: conv+="s"
elif unite == 1:
if dizaine in [1, 9]: conv += " " + list2[unite]
elif dizaine == 7: conv += " et onze"
elif dizaine in [2, 3, 4, 5, 6]: conv += " et un"
elif dizaine in [0, 8]: conv += " " + list1[unite]
elif unite in [2, 3, 4, 5, 6, 7, 8, 9]:
if dizaine in [1, 7, 9]: conv += " " + list2[unite]
else: conv += " " + list1[unite]
print("Votre nombre s'écrit :", conv.replace(" ", "-").strip("-").capitalize() + ".")
boucle = input("Voulez-vous convertir un autre nombre ? Tapez 'O' pour oui et 'N' pour non : ")
if boucle == "O":
conv = ""
continue
else : i = False
convNbToLetter(nb)
os.system("pause") |
Partager