Écrivez une fonction Python nommée “est_lipogramme” qui prend en entrée une chaîne de caractères et un caractère et qui renvoie un booléen indiquant si la chaîne de caractères est un lipogramme (c’est-à-dire s’il n’y a pas de caractère donné dans la chaîne).
La fonction renvoi True si le caractère n’existe pas sinon False.
Afficher la solution
1ère méthode:
def est_lipogramme(ch, caractere):
nb=0
for c in ch:
if c == caractere:
nb=nb+1
return nb==0
2ème méthode:
def est_lipogramme(ch, caractere):
for c in ch:
if c == caractere:
return False
return True
3ème méthode:
def est_lipogramme(ch, caractere):
i=0
test = True
while (test==True) and (i<len(ch)):
if ch[i] == caractere:
test = False
else:
i+=1
return test
Pour l’utiliser, vous pouvez simplement appeler la fonction en lui passant en argument le texte à vérifier et le caractère à exclure. Par exemple, pour vérifier si un texte est un lipogramme sans la lettre “e”, vous pouvez utiliser la ligne de code suivante :
print(est_lipogramme("Le chat mange du poisson", "e"))
Cet appel de fonction renverra True si le texte est un lipogramme sans la lettre “e” et False s’il contient au moins une occurence de cette lettre.