45
11. Les fichiers
11.1 - Présentation des fichiers :
Utilité :
Après avoir remplir une variable de type tableau, chaine, entier, … si vous redémarrez l’ordinateur est ce que vous trouvez les informations que vous avez saisi dans la variable ? → ………
Donc : un tableau, une matrice, une variable de type entier, … ne peuvent pas garder les valeurs des données après coupure du courant et pour résoudre ce problème, il faut utiliser une nouvelle structure qui peut garder les données de façon ………..
Définition :
Un fichier est ……….pouvant contenir un ensemble de données de façon ……….. Chaque fichier est identifié par
……… et ………sur un support de stockage (disque dur, flash disque, …) Travailler avec les fichiers :
L’utilisation d’un fichier ressemble beaucoup à l’utilisation d’un livre. Pour utiliser un livre, vous devez d’abord le trouver (à l’aide de son titre), puis l’ouvrir. Lorsque vous avez fini de l’utiliser, vous le refermez. Tant qu’il est ouvert, vous pouvez y lire des informations diverses, et vous pouvez aussi y écrire des annotations, mais généralement vous ne faites pas les deux à la fois. Dans tous les cas, vous pouvez vous situer à l’intérieur du livre, notamment en vous aidant des numéros de pages.
Vous lisez la plupart des livres en suivant l’ordre normal des pages, mais vous pouvez aussi décider de consulter n’importe quel paragraphe dans le désordre. Tout ce que nous venons de dire des livres s’applique également aux fichiers informatiques. Un fichier se compose de données enregistrées sur votre disque dur, sur une carte mémoire, une clef USB ou un CD.
:
1- Un fichier peut contenir des caractères, des chaines de caractères, des valeurs numériques, des enregistrements, … et possède 2 noms : Un nom ……….. et un nom ……….
2- En programmation, il existe deux types de fichiers :
• les fichiers ………..……
• les fichiers ……….
Exercice 36 :
(Tri d’un vecteur d’enregistrements) Soit l’enregistrement Ordinateur suivant :Ordinateur
Champ Signification Type et caractéristiques C Code Entier (positif de 4 chiffres) D Désignation Chaine (non vide)
P Prix Réel (strictement positif)
On désire faire un programme qui permet de remplir un tableau T par les informations de N ordinateurs (avec 2≤N<40) puis d’afficher la liste des ordinateurs par ordre décroissant des prix, autrement dit on commence par le plus cher jusqu’au moins cher.
Travail à faire :
1- Faire l’algorithme du programme principal 2- Faire les algorithmes des modules envisagés
46
11.2- Les fichiers texte :
Un fichier texte contient des caractères « imprimables » et des espaces organisés en lignes successives, ces lignes étant séparées les unes des autres par un caractère spécial non imprimable appelé marqueur de fin de ligne.
Déclaration d’un fichier texte:
Algorithmique :
En algorithmique Exemple
Tableau de Déclaration des Objets Objet Type / nature nom_fichier Fichier texte
TDO
Objet Type / nature
F Fichier texte
Les fonctions et les procédures prédéfinies sur les fichiers texte
Exercice 37 :
(création + remplissage et affichage d’un fichier texte) On demande de faire l’algorithme d’un programme nomme classe qui permet de :• Créer un fichier nommé physiquement D:\liste.txt et logiquement F
• Remplir le fichier F par le nom et le prénom de N élèves sachant que 3<N<30.
• Afficher le contenu du fichier. (le nom et le prénom de chaque élève sur une ligne) TAF :
1- Faire l’algorithme du programme principal 2- Faire les algorithmes des modules envisagés.
3- Traduire votre programme en Python
Exercice 38 :
(Manipulation des fichiers texte)On désire faire le programme nommé "Zoo" qui permet de : 1- Saisir un entier n avec n>3
2- Ecrire dans un fichier texte D:\animaux.txt les noms de n animal à raison d’un nom par ligne sachant que le nom d’un animal ne peut contenir que des lettres alphabétiques majuscules.
3- Dans un deuxième fichier texte D:\filtre.txt recopier seulement les noms des animaux qui commencent par une voyelle. ( A, E, I, O, U, Y)
4- Afficher le contenu du fichier D:\filtre.txt
TAF :
1- Faire l’algorithme du programme principal 2- Faire les algorithmes des modules envisagés.