Chaîne Bigramme – Bac Pratique 2017 [ Algorithme + Python ]

Algo et Python 23-09-24
34 0

Travail demandé

le terme Bigramme désigne la combinaison de deux lettres consécutives et distinctes dans un mot. On se propose d’écrire un programme Python qui permet d’afficher le nombre d’occurrences de chaque Bigramme d’une chaîne de caractères ch non vide et formée uniquement de lettres minuscules.

Exemple : Pour Ch=’mamapappacma’   le programme affiche :

Le nombre d’occurrences de ma est 3

Le nombre d’occurrences de am est 1

Le nombre d’occurrences de ap est 2

Le nombre d’occurrences de pa est 2

Le nombre d’occurrences de ac est 1

Le nombre d’occurrences de cm est 1

Solution Algorithmique

Voici un principe algorithmique qui permet de calculer le nombre d'occurrences de chaque bigramme dans une chaîne de caractères.

1- Saisie de la chaîne de caractères ch :

La chaîne ch est une chaîne non vide composée uniquement de lettres minuscules.

2- Identification des bigrammes :

Un bigramme est une combinaison de deux lettres consécutives distinctes dans la chaîne.

Parcourir la chaîne et extraire tous les bigrammes possibles.

3- Comptage des occurrences des bigrammes :

Pour chaque bigramme trouvé, compter combien de fois il apparaît dans la chaîne.

4- Affichage des résultats :

Afficher chaque bigramme distinct avec son nombre d'occurrences.

Dans cet algorithme, On va utiliser 3 fonctions  et une procédure:

Algorithme du programme Principal

Déclaration des objets

Objet Type / Nature
ch chaîne des caractères

 

La fonction verif_lettres

Cette fonction vérifie que la chaîne est composée seulement des lettres minuscules dont deux lettres consécutives sont distinctes.

Déclaration des objets

Objet Type / Nature
i entier
test_unicite booléen

 

La fonction saisie_chaine

Cette fonction saisit une chaîne composée uniquement des lettres minuscules et distinctes deux à deux.

Déclaration des objets

Objet Type / Nature
ch chaîne des caractères

 

La fonction nbr_occurrences

Cette fonction recherche le nombre d'occurrences d'une chaine ch1 dans une autre chaine ch.

Déclaration des objets

Objet Type / Nature
cp entier

 

La procédure afficher_occurrences

Cette procédure recherche et d’afficher le nombre d’occurrences de chaque Bigramme d’une chaîne de caractères

Déclaration des objets

 

Objet Type / Nature
ch1 chaîne des caractères
i entier

 

Solution en Python

Exécution du programme

Solution en Python et Designer QT

Pour créer une application en Python et Designer QT qui affiche le nombre d’occurrences de chaque Bigramme d’une chaîne de caractères ch, on va suivre ces étapes:

1- Créer l'interface graphique avec Qt Designer

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é 'bt_rechercher' pour chercher le nombre d’occurrences de chaque Bigramme.

QLabel nommé 'msg' pour afficher les message d'erreurs

QLabel nommé 'resultat' pour afficher le nombre d’occurrences de chaque Bigramme

Enregistrez le fichier avec l'extension .ui, par exemple bigramme-chaine-interface.ui.

2- Créer le script Python pour l'application

Voici un exemple de script Python qui utilise l'interface graphique générée par Qt Designer.

Exécution du programme

 

Vous pouvez voir aussi :

1) des exercices sur les chaînes des caractères

2) des exercices sur les tableaux

3) des sujets Bac pratique

4) des sujets Bac théorique

0 commentaire

laisser un commentaire

Veuillez noter s'il vous plaît*

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Passion de robotique

Atelier robotique

Construction des robots

Bras robotique

Maison intelligente

But de ce site web

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.

Coordonnées

Zaouiet Kontech-Jemmel-Monastir-Tunisie

+216 92 886 231

medaliprof@gmail.com

Photos des articles

Site robotique réalisé par Mohamed Ali-Prof Info