Rappel
Pour ouvrir un fichier :
OuvrirFichier (IdFic, ModeOuverture)
Avec
ModeOuverture = lecture ou écriture ou rajout.
Pour
fermer un fichier
FermerFichier (IdFic)
Pour
lire un fichier
LireFichier (IdFic, élément) cela
correspond à Lire(n) ó cin>>n
Pour
écrire un fichier
EcrireFichier (IdFic, élément) cela
correspond à Ecrire(n) ó cout<<n
Exercice 1
Faire une action de
fusion de deux fichiers d’entiers. Le fichier de sortie doit être trié.
Exercice 2
Soit le type suivant :
Type : Tetd = entité ( Nom : chaîne
Numéro : étudiant
Notes : tableau [5] d’entiers
Moyenne : entier)
On suppose que la fonction de saisie
Fonction SaisieEtd () : Tetd
Permettant de saisir un tableau de Tetd existe. On pourra donc s’en servir
Ecrire une fonction qui permet de saisir un groupe d’étudiant dans un fichier.
Ecrire une fonction qui permet de calculer la moyenne générale d’un groupe d’étudiant.
Exercice 3
Faire l’algorithme d’une action qui lit un fichier d’entiers et
affiche tous les entiers de ce fichiers qui sont pairs.
Ecrire une action qui lit un fichier d’entiers et met dans un autre
fichier d’entiers les valeurs paires.
Correction
Exercice 1
Action
Fusion ( E : f1 : fichier d’entiers, E : f2 : fichier
d’entiers, S : f3 : fichier d’entiers)
Var :
f3 : fichier d’entiers
Début
OuvrirFichier (f1, lecture)
Si EtatFichier (f1)=succès alors
OuvrirFichier
(f2, lecture)
Si EtatFichier
(f2)=succès alors
OuvrirFichier
(f3, écriture)
Si
EtatFichier (f3)=succès alors
LireFichier
(f1, n1)
LireFichier
(f2, n2)
Tant
que (EtatFichier(f1) ¹FdF ET EtatFichier(f2)¹FdF) faire
Si
n1<n2 alors
EcrireFichier (f3, n1)
LireFichier (f1, n1)
Sinon
EcrireFichier
(f3, n2)
LireFichier
(f2, n2)
Si
EtatFichier (f1) ¹ FdF alors
Répéter
EcrireFichier
(f3, n1)
LireFichier(f1,
n1)
Jusqu'à
EtatFichier(f1)=FdF
Si
EtatFichier (f2) ¹ FdF alors
Répéter
EcrireFichier
(f3, n2)
LireFichier
(f2, n2)
Jusqu'à
EtatFichier (f2) = FdF
FermerFichier
(f3)
Sinon
écrire (« Erreur en écriture sur le fichier destination »)
FermerFichier
(f2)
Sinon écrire
(« Erreur de lecture sur le fichier f2 »)
FermerFichier
(f1)
Sinon écrire (« Erreur en lecture
sur le fichier f1 »)
Fin
Exercice 3
Faire une fonction
qui recherche un entier x dans un fichier d’entiers et retourne vrai si x est
dans le fichier.
Action
EntierPairs (E : Fic : fichier d’entiers)
Var
n : entier
Début
OuvrirFichier (Fic, lecture)
Si EtatFichier (Fic) = succès
alors
LireFichier (Fic,
n)
Tant que
(EtatFichier (Fic) ¹ FdF) faire {ou FdF signifie Fin de
Fichier}
Si
n%2=0 alors Ecrire(n)
LireFichier(n)
FermerFichier
(Fic)
Sinon Ecrire (« Erreur, impossible
d’ouvrir le fichier en lecture »)
Fin
Action
EntiersPairsFichier (E : f1 : fichier d’entiers, ES : f2 :
fichier d’entiers)
Var
n : entier
Début
OuvrirFichier (f1, lecture)
Si EtatFichier (f1) = succès
alors
OuvrirFichier
(f2, écriture)
Si EtatFichier
(f2) = succès alors
LireFichier
(f1, n)
Tant
que EtatFichier(f1)¹FdF faire
Si
n%2=0 alors EcrireFichier(f2, n)
LireFichier
(f1, n)
FermerFichier(f2)
Sinon écrire
(« Erreur en écriture »)
FermerFichier
(f1)
Sinon écrire (« Erreur en
lecture »)
Fin
Fonction
Recherche (x : entier, f : fichier d’entiers) : booléen
Var
bool repç false
Début
OuvrirFichier (f, lecture)
Si EtatFichier(f)=succès alors
LireFichier(f, n)
Tant que
(EtatFichier(f) ¹ FdF ET n¹x) faire
LireFichier(f,
n)
Si n=x alors repç true
FermerFichier (f)
Sinon Ecrire (« Erreur en
lecture »)
Fin
ConversionConversion EmoticonEmoticon
Remarque : Seul un membre de ce blog est autorisé à enregistrer un commentaire.