Solution Exercice 63: algorithme python pour convertir une chaine en majuscule sans utiliser la méthode upper()

Exercice 63

En utiliant l'Exercice 62, créez un programme python sous form de fonction qui prend en paramètre une chaîne s et qui renvoie la même chaîne en majuscules sans utiliser la méthode upper().
Vous pouvez utiliser les méthodes chr() et ord().

Solutions




#coding: utf-8
def toUppercase(s):
    # En utilisant l'exercice 62, on obtient facilement la listes des caractères en majuscule 
    #et la liste des caractères en minuscule:
    uppercase_characters = [chr(i) for i in range(65 , 91)]
    lowercase_characters =  [chr(i) for i in range(97 , 122)]
    # on peut donc obtenir un caractère majuscule à partir d'un caractère minuscule 
    #en soustrayant 32 à son code ascii
    
    # initialisation de la liste qu'on cherche
    s_upper = ""
    for x in s:
        if x in lowercase_characters:
            # on transforme le caractère minuscule en majuscule
            x = chr(ord(x) -32)
            # on ajoute le caractère à la liste 
            s_upper = s_upper + x
        else:
            s_upper = s_upper + x
            
    return s_upper
print(toUppercase("Python Programming"))
# La sortie est : PYTHON PROGRAMMING




Younes Derfoufi
CRMEF OUJDA

1 thought on “Solution Exercice 63: algorithme python pour convertir une chaine en majuscule sans utiliser la méthode upper()

Leave a Reply