Correction phrases – Bac pratique – Section informatique- 2008

Bac Info 21-11-25
15 0

Sujet (Algo et programmation - Bac 2008)

On dispose d'un fichier texte intitule phrases.txt comportant une suite de phrases. Une ligne de ce fichier contient une seule phrase.

On se propose d'apporter aux phrases de ce fichier les corrections suivantes:

On enlève les espaces en plus pour n'en garder qu'un seul entre deux mots successifs, on enleve eventuellement le ou les espaces au debut et a la fin de chaque phrase, et on ajoute un point final a chaque phrase s'il en manque.

Ensuite, on compte et on affiche le nombre de phrases et de mots de ce fichier ainsi que la moyenne des nombres de mots par phrase.

Exemple :

la phrase : "L'infonnatique est une science " sera corrigee comme suit : " L'infonnatique est une science ." et elle compte 4 mots.

Questions:

Ecrire un programme qui remplit un fichier "phrases.txt" par une suite de phrases puis l'ouvre pour réaliser les actions mentionnées ci-dessus. La correction des ces phrases sera sauvegardée dans un deuxième fichier intitule phr_cor.txt.

Solution Algorithmique

Cet algorithme permet de saisir des phrases, de les corriger en supprimant les espaces inutiles, puis de créer un deuxième fichier contenant :

1- la phrase corrigée (avec un seul espace et un point final),

2- le nombre de mots qu’elle contient.

En résumé, il réalise :

- Lecture et enregistrement d’un ensemble de phrases dans un fichier phrases.txt.

- Nettoyage des phrases : suppression des espaces au début, à la fin, des doubles espaces, ajout d’un point final.

- Comptage du nombre de mots dans chaque phrase.

- Écriture d’un fichier corrigé phr_cor.txt contenant la phrase propre + le nombre de mots.

Dans cet algorithme, On va utiliser deux fonctions et deux procédures :

Algorithme du programme Principal

La fonction supprimer_espaces

Cette fonction sert à corriger et nettoyer une phrase en supprimant tous les espaces inutiles et en s’assurant qu’elle se termine correctement.

Plus précisément, elle :

- supprime les espaces au début de la chaîne.

- supprime les espaces à la fin de la chaîne.

- remplace tous les doubles espaces par un seul espace à l’intérieur de la phrase.

- ajoute un point final si la phrase ne se termine pas déjà par un « . ».

- Elle retourne ensuite la phrase propre et bien formatée.

La fonction nbr_mots

Cette fonction sert à compter le nombre de mots dans une chaîne de caractères (une phrase).

Comment elle fonctionne ?

Elle parcourt la phrase caractère par caractère.

Chaque fois qu’elle rencontre :

un espace → cela signifie qu’un mot vient de se terminer ;

la fin de la phrase → cela signifie que le dernier mot est terminé.

À chaque fin de mot détectée, il augmente le compteur nbr.

À la fin, il retourne le nombre total de mots contenus dans la phrase.

Déclaration des objets

Objet Type / Nature
nbr entier
i entier

 

La procédure remplir_fichier_phrases

Cette procédure permet de créer un fichier contenant plusieurs phrases saisies par l’utilisateur.

Plus précisément, elle :

1- demande à l’utilisateur combien de phrases il veut ajouter.

2- ouvre (ou crée) le fichier phrases.txt en mode écriture.

3- demande à l’utilisateur de saisir chaque phrase.

4- écrit chaque phrase dans le fichier, une par ligne.

Déclaration des objets

Objet Type / Nature
n entier
f fichier du phrase.txt
i entier
phrase chaine

 

La procédure remplir_fichier_ph_cor

Cette procédure sert à créer un fichier contenant les phrases corrigées, accompagnées du nombre de mots dans chacune d’elles.

Plus précisément, elle réalise les actions suivantes :

1- Ouvre le fichier phrases.txt en lecture, qui contient les phrases saisies par l’utilisateur.

2- Ouvre le fichier phr_cor.txt en écriture, qui va contenir les phrases corrigées.

3- Lit toutes les phrases du fichier source.

Pour chaque phrase :

- Elle enlève le retour à la ligne \n.

- Elle applique la fonction supprimer_espaces() pour corriger la phrase (supprimer les espaces inutiles, ajouter un point…).

- Elle comptabilise le nombre de mots dans la phrase corrigée grâce à nbr_mots().

-Elle écrit dans phr_cor.txt : la phrase corrigée entre guillemets, suivie d’un message indiquant combien de mots elle contient.

 

Déclaration des objets

Objet Type / Nature
f_phrases fichier du phrases.txt
f_phr_cor fichier du phr_cor.txt
phrases chaine
phrase chaine
phrase_corrigee chaine

Solution en Python

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