0% ont trouvé ce document utile (0 vote)
6 vues5 pages

Fichiers en Python : Types et Manipulations

Transféré par

hichemkemali
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
6 vues5 pages

Fichiers en Python : Types et Manipulations

Transféré par

hichemkemali
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

4Algorithmique et programmation

ème Tu as un énorme potentiel et je suis tellement fier


Année Sciences de l’informatique de toi ! Continue, tu es sur la voie du succès !

A.S : 2025-2026, Prof : Hichem Kemali

Objectifs :
 Fichiers : Définition, Types de fichiers déclaration
 Fichier Texte : Remplissage, affichage
 Fichier Binaire : Remplissage et l’affichage
 Fichier  Tableau Fichier
 Fichier  Fichier
 Python et Fichiers
Ouverture d’un fichier
Ouvrir ( c̎ hemin\[Link] ̎,f, ̎mode ̎)
‘’wb ‘’ : créer fichier et ecrire
mode ‘’a’’ : ouvrir et pointer vers la fin

Les fichiers
Un fichier informatique est
‘’rb’’ : ouvrir le fichieer et lire
Lecture dans un fichier
Lire ( f , X)
, au sens commun, une
collection, un ensemble de
Fichier Binaire
données numériques réuni
es sous un même nom,
Ecriture dans un fichier
enregistrées sur un support Ecrire ( f , X)
de stockage permanent

Fichier Binaire
Les fichiers binaires : Les
Tester la fin du fichier
informations ne sont lisibles Fin_fichier(f)
que par le programme qui les
a conçus (image, son, etc...).
Fermeture d’un fichier
Fichier texte Fermer(f)
Un fichier texte est un fichier qui
contient des caractères
Ouverture d’un fichier
Ouvrir ( ̎chemin\[Link] ̎,f, ̎mode ̎)
imprimables et des espaces mode ‘’w ‘’ : créer fichier et ecrire
organisés en ligne successives ces ‘’r’’ : ouvrir le fichieer et lire
‘’a’’ : ouvrir et pointer vers la fin
lignes étant séparées les unes des
autres par un caractère non- Lecture : la totalité du fichier Fermeture d’un fichier
imprimable appelé ‘’marqueur de Fermer(f)
Lire ( f , ch)
fin de ligne’’ (\n) Tester la fin du fichier
Déclaration Fin_fichier(f)
TDNT Lecture : ligne par ligne
Type Lire_Ligne ( f , ch)
étudiant =enregistrement
Cin,Nom :chaine
Moyenne :réel Ecriture :dans la même ligne sans retour
Fin
Ecrire ( f , ch)
Fiche1=fichier d’ étudiant
Fiche2 =fichier de réels
TDOG
Ecriture :Ecrire puis retourner à la ligne
Objet Type
F1
F2
Fiche1
Fiche2
Ecrire_nl ( f , ch)
Fichier texte
F Texte
12

1 Soit ‘’[Link]’’ un fichier déjà rempli par plusieurs entiers


33


Ecrire algorithme de la fonction taille (ch : Ecrire algorithme du module qui permet
chaine) qui permet de calculer le nombre d’ajouter la somme du fichier vers la fin du 524
d’entiers existe dans le fichier fichier
........................................ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .682
...........
........................................ ......................................................
........................................ ......................................................
........................................ ......................................................
........................................ ......................................................
........................................ ......................................................
........................................ ......................................................
........................................ ......................................................
........................................ ......................................................
........................................ ......................................................
........................................ ......................................................
 On donne l’algorithme de la procédure
. . . . . . .: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
suivante . . . . . . . . . .. . . .. .
Procédure
. . . . . . . . .Quoi
. . . . (ch
. . . :chaine)
. . . . . . . . . . . . . . . . 3-
. . . .pour
. . . . [Link] contient : [Link]
Début Exécuter à la main cette procédure
........................................
. ouvrir(ch,f,’’rb’’)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
.. Nb= ………….. ………
nbtaille(ch) ………
. . . .. . . .. .
Pour i de 0 à nb-1 faire 33
………
Lire(f,t[i]) T:
15 ………
Fin Pour
………
fermer (f) 524
ouvrir(ch,f,’’wb’’) ………
Pour i de 0 à nb-1 faire 682 ………
ecrire(f,t[n-1-i]) ………
4- En déduire le rôle de cette procédure ……
FinPour
Fermer (f) ………………………………………………………………………………………………
Fin ………………………………………..

2 1- Valider les instructions suivantes (justifier pour les instructions invalides

Type
Valide /
étudiant =enregistrement Instruction Justifier
Cin,Nom :chaine invalide
Moyenne :réel Lire (F,ch)
Fin
Fiche1=fichier d’ étudiant
Fiche2 =fichier de réels Ecrire (F2,ent([Link])
TDOG
Objet Type Ouvrir (‘[Link]’’,F1,’’w’’)
F1 Fiche1
F2 Fiche2 Lire_Ligne(F1,E)
F Texte
R réel
N entier Ok  Fin_Fichier(F)
ok booléen
ch chaine
E etudiant
3
L’utilisation des téléphones portables permet de stocker le répertoire des contacts dans deux fichiers :
- Un fichier ‘ [Link] ’, enregistré sur la mémoire du téléphone ;
- Un fichier ‘ [Link] ‘, enregistré sur la mémoire de la carte SIM
Chaque fichier contient des enregistrements d’un contact regroupant : un nom, un prénom et un numéro
de téléphone. Les éléments des deux fichiers sont supposés déjà triés selon le numéro de téléphone.
Ecrire une procédure qui permet de fusionner les deux fichiers dans un 3ème fichier nommé [Link] en
évitant les doublons (Un élément est un doublon s’il existe à la fois dans les deux fichiers).

4
Soit F([Link]) un fichier d’entiers (supposé existant) composé de séquences de nombres, chaque
séquence est une répétition du même nombre (non nul). Toutes les séquences sont séparées par un zéro. Et
aucune séquence du même nombre ne se répète dans le fichier.

14 14 14 0 5 5 0 29 29 29 29 0 6 6 6

Ecrire une procédure Compresser qui crée un fichier G d’enregistrement contenant pour chaque séquence le
nombre représenté ainsi que la longueur de la séquence.

G Nombre : 14
Longueur : 3
Nombre : 5
Longueur : 2
Nombre : 29
Longueur : 4
Nombre : 6
Longueur : 3

5
Soient F1 ([Link]) et F2 ([Link]) deux fichiers d’entiers strictement positifs et sans répétition. Ecrire un
algorithme qui construit (crée) un fichier G d’entiers tel que G contient pour chaque valeur de F1 la valeur et
tous ses multiples appartenant à F2 (F1 et F2 sont supposés existants)
Exemple :
F1 : 3 10 20 17

F2 : 3 6 19 60 40 30

G : 3 3 6 60 30 10 60 40 30 20 60 40 17

- Ecrire un algorithme qui permet à partir du fichier résultat (G) de générer un autre fichier texte ([Link])
contenant toutes les valeurs du fichier (G) (sans répétition) avec leur nombre .
6
On dispose d’un fichier texte nommé "[Link]" situé sous la racine C : contenant des mots et leurs synonymes
séparés par ":"
Ecrire un algorithme qui permet :

 D’afficher le (s) synonyme (s) d’un mot saisi, en cas d’inexistence, le programme affichera le message "ce
mot ne se trouve pas dans le dictionnaire !! "
 Stocker dans un fichier texte nommé "resumé.txt" les mots du dictionnaire (mot par ligne sans
synonymes)
 Ajouter à la fin du fichier "resumé.txt" le nombre total des lettres du dictionnaire.

[Link]
Mot à chercher son (ses) synonyme(s) : tronquer
Le programme affichera : retrancher, diminuer, écourter

Resumé.txt

7
Pour calculer le chiffre de chance, on utilise les pyramides de chance qui sont construits à partir des lettres du prénom et
du nom de la manière suivante : e

 Traduisez d’abord en chiffre les lettres du prénom et du nom selon l tableau de correspondance suivant :

N.B. : Si le prénom ou le nom sont composés, considérez-le comme un seul (sans espaces)

 Notez chaque chiffre en dessous de la lettre qui lui correspond. Additionnez ensuite les chiffres deux par deux
(chiffre i + chiffre i+1) jusqu’à obtenir les pyramides renversées ci-dessous. A la pointe de ces pyramides, vous
obtenez les chiffres correspondant à votre prénom et à votre nom.
N.B. : si la somme dépasse 9, on additionne les chiffres de la somme
On se propose d’écrire un programme qui permet :

 De lire N (4 ≤ N ≤ 10) noms et prénoms composés des lettres majuscules uniquement


 De créer et remplir un fichier texte nommé « [Link] » par les prénoms, les noms et les nombres de
chance. N.B. : chaque ligne contiendra un prénom, un espace, un nom et son nombre de chance précédé par
« : ». Exemple : Soient les prénoms et les noms suivants : AHMED BENALI, MARIEM NAFFATI, IBAE BENAMOR,
NOUREDDINE MARZOUGUI Le fichier « [Link] » sera le suivant :

Vous aimerez peut-être aussi