Et encore un fichier ...

Voir le sujet précédent Voir le sujet suivant Aller en bas

Et encore un fichier ...

Message  Hanafi le Mer 27 Mai - 12:31

Image1.img est un fichier text qui comporte une suite de lignes toutes de même longueur. De plus les caractères utilisés sont des '1' et des '0' uniquement.

1°/ Écrire un sous programme Lecture qui permet de transférer le contenu d'un tel fichier dans un tableau d'entiers de type t_image à définir. On n'oubliera pas de gérer la taille de l'image.

2°/ Écrire un sous-programme Affiche pour afficher une telle image à l'écran. Les '1'
correspondront à l'écriture d'un 'X' et les '0' seront traduits par un espace.

3°/ Écrire un sous-programme Ecriture pour stocker dans un fichier dont le nom sera indiqué, le contenu d'un tableau de type t_image.
On se propose de faire quelques transformations sur une image. Ces transformations sont de type local. Elles dépendent de l'état du voisinage de chaque point de l'image. Les transformations s'effectuent à partir d'un tableau de type t_image. On s'aidera d'un autre tableau auxiliaire.

4°/ Écrire un sous programme Bruit qui supprime les points isolés, c'est-à-dire qui remplace un '1' par un '0' quand le '1' est entouré de 8 '0' et qui remplace un '0' par un '1' quand le '0' est entouré de 8 '1'.

5°/ Écrire un sous programme Ouverture qui conserve dans l'image tous les groupes de 4 '1' en carré. On utilisera un autre tableau pour stocker le résultat.

6°/ Écrire un sous programme Erosion qui conserve à '1' tous les points dont les 8 voisins sont '1' et qui met à '0' les autres points.

7°/ Écrire un sous programme Dilatation qui remplace chaque '0' par un '1' dès qu'un de ses 8 voisins est à '1'.

8°/ Écrire un programme principal qui permet de vérifier la bonne écriture de ces sous-programmes et de montrer leur intérêt sur l'image proposée.

Exemple de fichier image1.txt

00000000000000000000000000000000000000000
00100000111111000100001000000111111000000
00000011111111100000100000111111011110000
00001111000111000000000011111111111111100
00011100000111000100001111110000000001110
00111000000111000000011110000000000001010
01110000000111100000111100000000000011110
01100000000111000010011110000010000111100
01000100000111000000001000000000001111000
00000000000111000000000000000000111100000
00000000000111100000000100000001111000000
00100010001111000000000000000011100000000
00000000000111000010000000001111000010000
00000000000111000000000000111100000000000
00010000000111000000000011110000010000110
00000000001101100000011111111111111111110
00000000001111100001111111111111111111110
00000000000000000000000000000000000000000
Smile Bonne révision
avatar
Hanafi

Messages : 106
Date d'inscription : 25/10/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Et encore un fichier ...

Message  Hanafi le Ven 29 Mai - 22:05

Je vous conseille d’utiliser les structures de données suivantes :
- 2 matrices
- 2 fichiers texte
- 1 chaîne de caractères
- 3 entiers : pour nombre de lignes, nombre de colonnes et choix du menu
TDNT
Type
T_image = tableau de 80 lignes et 80 colonnes d’éléments de type caractères


Et voici l’analyse de la procédure Lecture qui remplit une matrice T et trouve les valeurs de l et c :
Résultat : T, l, c
Traitement : T,l,c=[ Ouvrir(F) ]
[l <--0 , c <--0 ]
Tant que Non Fin_Fichier(F) Faire
Lire(F,ligne)
C<--long(ligne)
l <--l +1
Pour i de 1 à long(ligne) Faire
T[l,i] <--ligne[i]
Fin Pour
Fin Tant que
Fermer(F)
Fin analyse

J’attends vos propositions pour la procédure Affiche.
bounce
avatar
Hanafi

Messages : 106
Date d'inscription : 25/10/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum