Outils pour utilisateurs

Outils du site


prog:palindrome

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
prog:palindrome [2020/03/17 15:35] jbpuelprog:palindrome [2020/04/06 09:03] (Version actuelle) – supprimée jbpuel
Ligne 1: Ligne 1:
-====== Variations autour du palindrome ====== 
  
- 
- 
-<code python> 
- 
-""" 
- 
-Variations autour du palindrome 
-JBP - 03/2019 
- 
-""" 
- 
- 
-def nettoyage(phrase): 
-    # Fonction de nettoyage d'une chaîne de caractères : 
-    # Supprime les caractères inutiles, passe en minuscules 
-    # Remplace les caractères accentués par le caractère correspondant 
-    phrase = phrase.replace(" ", "") 
-    phrase = phrase.replace("'", "") 
-    phrase = phrase.replace(",", "") 
-    phrase = phrase.replace(";", "") 
-    phrase = phrase.replace(":", "") 
-    phrase = phrase.replace("!", "") 
-    phrase = phrase.replace("?", "") 
-    phrase = phrase.replace(".", "") 
-    phrase = phrase.replace("-", "") 
-    phrase = phrase.lower() 
-    phrase = phrase.replace("é", "e") 
-    phrase = phrase.replace("è", "e") 
-    phrase = phrase.replace("ê", "e") 
-    phrase = phrase.replace("ë", "e") 
-    phrase = phrase.replace("à", "a") 
-    phrase = phrase.replace("â", "a") 
-    phrase = phrase.replace("î", "i") 
-    phrase = phrase.replace("ï", "i") 
-    phrase = phrase.replace("ô", "o") 
-    phrase = phrase.replace("ù", "u") 
-    phrase = phrase.replace("û", "u") 
-    phrase = phrase.replace("ü", "u") 
-    phrase = phrase.replace("ç", "c") 
-    return phrase 
- 
-ph = input("Phrase : ") 
-ph = nettoyage(ph) 
-print ("Phrase nettoyée :",ph) 
-i = 0 
-long = len(ph) 
- 
- 
-# Méthode 1 : parcours classique de la chaîne 
-while i<long/2: 
-    if (ph[i] == ph[long-1-i]): 
-        pal = True 
-    else: 
-        pal = False 
-        break 
-    i=i+1 
-     
-if pal: 
-    print ("Palindrome") 
-else: 
-    print ("Pas palindrome") 
- 
-# Méthode 2 : parcours de la chaîne, notation plus python 
-while i<long/2: 
-    if (ph[i] == ph[-1-i]): 
-        pal = True 
-    else: 
-        pal = False 
-        break 
-    i=i+1 
-     
-if pal: 
-    print ("Palindrome") 
-else: 
-    print ("Pas palindrome") 
- 
-# Méthode 3 : comparaison de la chaîne et de son miroir, encore plus python 
-ph2 = ph[::-1] 
-if ph2 == ph: 
-    print ("Palindrome") 
-else: 
-    print ("Pas palindrome") 
-     
-# Méthode 4 : fonction récursive 
-def palindrome (phrase): 
-    if phrase[0] == phrase[-1]: 
-        pal = True 
-        if len(phrase) > 2: 
-            pal = palindrome (phrase[1:-1]) 
-    else: 
-        pal = False 
-    return pal 
- 
-if palindrome(ph): 
-    print ("Palindrome") 
-else: 
-    print ("Pas palindrome") 
-</code> 
prog/palindrome.1584459333.txt.gz · Dernière modification : 2020/03/17 15:35 de jbpuel