Ecrire un algorithme et un programme Python qui permet de supprimer les espaces superflus dans une chaine des caractères.
Exemple : Si la chaine est : ‘ Bac Pratique en informatique ‘
Le résultat est :’Bas Pratique en informatique’
Pour supprimer les espaces superflus dans une chaîne de caractères, nous pouvons utiliser un algorithme qui traverse la chaîne et reconstruit une nouvelle chaîne sans espaces supplémentaires. Voici les étapes de base de cet algorithme :
1- On supprime tous les espaces se trouvant au début de la chaîne.
2- On supprime tous les espaces se trouvant à la fin de la chaîne.
3- Parcours de la chaîne : Traversez chaque caractère de la chaîne d'entrée.
Si on trouve un double espace, on le remplace par un double espace.
Résultat final : La chaîne de résultat aura tous les espaces superflus supprimés.
Dans cet algorithme, On va utiliser une fonction qui fait le codage de la chaîne des caractères.
Algorithme du programme principal
1 2 3 4 5 6 |
Algorithme codage_message Debut Ecrire('donner une chaine: ') Lire(ch) Ecrire('la nouvelle chaine apres elimination les doubles espaces :', supprimer_espaces(ch)) Fin |
Déclaration des objets
Objet | Type / Nature |
ch | chaîne des caractères |
La fonction supprimer_espaces
Cette fonction supprime les espaces et retourne une chaîne sans espaces doubles.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
Fonction supprimer_espaces(ch:chaîne) Début Tant que(ch[0]=' ') Faire # elimnier tous les espaces au début de la chaine Effacer (ch, 1, 2) Fin tant que Tant que (ch[len(ch)-1]=' ') Faire # elimnier tous les espaces a la fin de la chaine Effacer (ch, len(ch)-1, len(ch)) Fin tant que Tant que (Pos(ch,' ')>0) faire ch=ch.replace(" ", " ") # remplacer les doubles espaces par un seul espace Fin tant que retourner ch Fin |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
def supprimer_espaces(ch) : while(ch[0]==' '): # elimnier tous les espaces au début de la chaine ch=ch[1:len(ch)] while(ch[len(ch)-1]==' '): # elimnier tous les espaces a la fin de la chaine ch=ch[0:len(ch)-1] while (ch.find(' ')>0): ch=ch.replace(" ", " ") # remplacer les doubles espaces par un seul espace return ch #programme principal ch=input("donner une chaîne des caractère ") print ('la nouvelle chaine apres elimination les doubles espaces : \n'+ supprimer_espaces(ch)) |
Exécution du programme
Pour créer une application en Python pour supprimer les espaces de la chaîne des caractères en utilisant Qt Designer pour l'interface graphique, suivez ces étapes :
a- Ouvrez Qt Designer et créez un nouveau fichier de type Main Window.
b- Ajoutez ces widgets:
QLineEdit
nommé 'ch' pour entrer une chaîne des caractères .
QPushButton
nommé 'supprimer_bt' pour exécuter le module suppression_espaces.
QLabel
nommé 'nouvelle_ch' pour afficher la chaîne sans les espaces doubles et les remplacer par un seul espaces.
Enregistrez le fichier avec l'extension .ui
, par exemple supprimer-chaine.ui
.
Voici un exemple de script Python qui utilise l'interface graphique générée par Qt Designer.
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 |
from PyQt5.uic import loadUi from PyQt5 import QtCore, QtGui from PyQt5.QtWidgets import * from PyQt5 import QtCore, QtGui, QtWidgets from numpy import array app = QApplication([]) windows = loadUi ("supprimer-chaine.ui") def supprimer_espaces(ch) : while(ch[0]==' '): # elimnier tous les espaces au début de la chaine ch=ch[1:len(ch)] while(ch[len(ch)-1]==' '): # elimnier tous les espaces a la fin de la chaine ch=ch[0:len(ch)-1] while (ch.find(' ')>0): ch=ch.replace(" ", " ") # remplacer les doubles espaces apar un seul espace return ch def suppression() : ch = windows.ch.text() windows.nouvelle_ch.setText(supprimer_espaces(ch)) windows.supprimer_bt.clicked.connect(suppression) windows.show() app.exec_() |
Exécution du programme
Vous pouvez voir aussi :
La robotique éducative joue un rôle important dans l'éducation des enfants et des jeunes en les aidant à acquérir des compétences en science et technologie.
Dans ce cadre notre site web représente une excellente ressource pour les parents, les enseignants et les enfants qui souhaitent découvrir la robotique.
Zaouiet Kontech-Jemmel-Monastir-Tunisie
+216 92 886 231
medaliprof@gmail.com
Site robotique réalisé par Mohamed Ali-Prof Info