Programation c

Fermé
aya - Modifié par aya le 25/05/2011 à 08:03
 sam - 31 mai 2011 à 18:15
Bonjour,
j'ai un projet eh ne sais pas quoi faire je souhaite que vous m'aidez s'il vous plait

Le but de ce projet est de crypter un fichier en y effectuant des modifications définies par des balises. Deux balises permettent de délimiter une zone à modifier dans le fichier ; ces deux balises correspondent au début de la zone < ...> et à sa fin </...>.
Les balises sont les suivantes :
<ic> : inverser le contenu d'une zone caractère par caractère.
<im> : inverser le contenu d'une zone mot par mot.
<m> : Mettre les caractères alphabétiques d'une zone en minuscule.
<M> : Mettre les caractères alphabétiques d'une zone en majuscule.
<cr pas> : crypter le contenu d'une zone en remplaçant chaque caractère alphabétique par celui qui le suit cycliquement de pas positions (pas étant un paramètre positif ou négatif).
Ex : <cr 3> Bonjour, c'est 1 exemple !! </cr> devient
Erqmrxu f'hvw 1 hahpsoh !!


Les balises peuvent être imbriquées à condition qu'elles ne soient pas du même type
L'entrée du programme est donc un fichier balisé et le résultat est un autre fichier comprenant le contenu modifié du fichier d'entrée.

Exemple1
Ceci est un exemple de fichier a transformer. Ici il y a une balise inversante <ic>texte a inverser </ic>alors que <im> ceci doit etre inverse (123) mot par mot </im>.
Mettre <m> ceci EN MinuscuLe ; 12345 </m>
Mettre <M> ceci EN MajuscuLe ; 6564563456 </M>
Crypter ce qui suit <cr 2> abcd 12 xyz </cr>
Crypter ce qui suit <cr -2> abcd 12 xyz </cr>
Exemple d'imbrication : <cr 2> ab<M>cd 1</M>2 xyz </cr>
Autre exemple d'imbrication : <cr 2> ab<ic>c<M>d 1</M>2 x</ic>yz </cr>


Résultat escompté :
Ceci est un exemple de fichier a transformer. Ici il y a une balise inversante resrevni a etxet alors que icec tiod erte esrevni )321( tom rap tom.
Mettre ceci en minuscule ; 12345
Mettre CECI EN MAJUSCULE ; 6564563456
Crypter ce qui suit cdef 12 zab
Crypter ce qui suit yzab 12 vwx
Exemple d'imbrication : cdEF 12 zab
Autre exemple d'imbrication : cdz 21 Feab

2 réponses

varfendell Messages postés 3256 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 8 février 2020 704
25 mai 2011 à 10:43
Bonjour,

Ton exercice est des plus simple.
Sur CCM, on ne fourni pas de solution comme cela, ce n'est pas pedagogique. Je vais te donner un ordre de recherche:

Tout dabord recupere le contenu de ton fichier dans ton programme C.
Tu trouvera un tuto pour lire et ecrire dans un fichier ici

Ensuite stocke le contenu dans des variables (chaine de caractere que tu apprendra a manipuler ici) puis dans des tableaux (tuto ici)

Pour finir il ne te reste plus qu'a ecrire l'algo a l'aide de boucle (tuto ici) et de condition (encore un tuto ici)

Des fois que tu ne sache pas quoi utiliser comme outils, voici des indications ici

Pour finir, afin d'éviter d'avoir a repeter certain algorithme (comme la lecture d'un tableau), je te conseil de faire des fonction (tuto ici)

Avec ça tu devrais avoir de quoi faire, tiens nous au courant si tu rencontre des problemes concret (erreur dans le code que tu ne comprend pas)
0
il faut utiliser une pile pour resoudre le problem a la maniere de la post fixee
0