100% ont trouvé ce document utile (4 votes)
2K vues6 pages

Exercice de Revision (Enregistrement Matrice Fichier)

Ce document décrit un algorithme de cryptage de mots de passe. Il contient la description de plusieurs procédures et fonctions pour remplir une fiche d'adhérent, saisir une clé, remplir une matrice de cryptage et crypter les mots de passe.

Transféré par

Bacem HAMMAMI
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
100% ont trouvé ce document utile (4 votes)
2K vues6 pages

Exercice de Revision (Enregistrement Matrice Fichier)

Ce document décrit un algorithme de cryptage de mots de passe. Il contient la description de plusieurs procédures et fonctions pour remplir une fiche d'adhérent, saisir une clé, remplir une matrice de cryptage et crypter les mots de passe.

Transféré par

Bacem HAMMAMI
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

Algo&Prog Ihrissane khaireddine

--Correction Ex de Révision--

1/

Procedure Remplir_F(@Fa :Fiche )


Debut
Ouvrir(‘’[Link]’’,Fa,’’wb’’)
Repeter
Repeter

Ecrire(‘’Nom et Prenom= ’’)


Lire([Link])
Jusqu’à( verif_AlphEsp([Link]) et [Link] # ‘’)
Repeter
Ecrire(‘’Cin=’’)

Lire([Link])
Jusqu’à(verif_chiff([Link]) et long([Link])=8)
Repeter
Ecrire(‘’tel=’’)
Lire([Link])

Jusqu’à(verif_chiff([Link]) et long([Link])=8)
Repeter
Ecrire(‘’Login= ’’)
Lire([Link])
Jusqu’à( verif_AlphEsp([Link]) et [Link] # ‘’)

[Link]’’
Repeter
Ecrire(‘’Voulez-Vous continuer ? [O/N]= ‘’)
Lire(rep)
Jusqu’à (Majus(rep) dans [‘’O’’,’’N’’])

Jusqu’à (Majus(rep)=’’N’’)
Fermer(Fa)

1
Algo&Prog Ihrissane khaireddine

Fin
Fonction verif_AlphEsp(ch :chaine) :booleen

Debut
i0
Tantque( (ch[i] dans [‘’A’’..’’Z’’,’’ ‘’]) et (i<=long(ch)-1) )Faire
ii+1
fin tq

Retourner(i>long(ch)-1)
Fin

Fonction verif_chiff(ch :chaine) :booleen


Debut

i0
Tantque( (ch[i] dans [‘’0’’..’’9’’]) et (i<=long(ch)-1) )Faire
ii+1
fin tq
Retourner(i>long(ch)-1)

Fin
2/
Procedure Saisie_cle(@cle :chaine)
Debut
Repeter

Ecrire(‘’cle=’’)
Lire(cle)
Jusqu’à (long(cle)dans [3..10] et verif_cle(cle) )
Fin

2
Algo&Prog Ihrissane khaireddine

Fonction verif_cle(ch :chaine) :booleen

Debut
i0
ji+1
Tantque( (ch[i] dans [‘’A’’..’’Z’’]) et (ch[i]# ‘’W’’) et (ch[i]# ch[j]) et(i<=long(ch)-1)
Et (j<=long(ch)-1) Faire

ii+1
jj+1
Fin tq
Retourner(i>long(ch)-1 et j>long(ch)-1)
Fin

3/
Procedure Remplir_M(@M :Mat ;cle :chaine)
Debut
L0
C0

Pour k de 0 à long(cle)-1 faire


M[L,C]cle[k]
CC+1
Si( C=5)Alors
LL+1

C0
Fin Si
Fin pour
w0,j0
Tantque(L<5)Faire

Carchr(65+w)
Si( Non(cle[j]=Car) et C # ‘’W’’ et j<=long(cle)-1) Alors

3
Algo&Prog Ihrissane khaireddine

M[L,C]Car
jj+1

CC+1
Si(C=5)Alors
LL+1
C0
Fin Si

Fin Si
ww+1
Fin tq
Fin
4/

Procedure Crypte(@Fa :Fiche ;M :Mat)


Debut
Ouvrir(‘’[Link]’’,Fa,’’rb’’)
Tantque Non(fin_fichier(Fa))Faire
Lire(Fa,E)

Ch[Link]
Res’’
Pour i de 0 à long(Ch)-1 faire
Si(Ch[i]=’’)Alors
ResRes+’’ ‘’

Sinon Si (Ch[i]=’’W’’) Alors


ResRes+det_indice(M,’’V’’)
Sinon
ResRes+det_indice(M,Ch[i])
Fin Si

Fin pour
[Link]Res

4
Algo&Prog Ihrissane khaireddine

Fin tq
Fermer(Fa)

Fin

Fonction det_indice(M :Mat ;Ca :caractere) :chaine


Debut
TestFaux

L-1
Tantque (Non(Test) et L<5)Faire
LL+1
C-1
Tantque (Non(Test) et C<5)Faire

CC+1
Test(Ca=M[L,C])
Fin Tq
Fin tq
Retourner( chr(L+65)+chr(C+65) )

Fin
5/
Procedure Affiche(@Fa :Fiche)
Debut
Ouvrir(‘’[Link]’’,Fa,’’rb’’)

Tantque(Non(fin_fichier(Fa))Faire
Lire(Fa,E)
Ecrire([Link]+’’ ‘’+[Link]+’’ ‘’+[Link])
Fin tq
Fermer(Fa)

Fin

5
Algo&Prog Ihrissane khaireddine

Algorithme Ex

Debut TDOG
Remplir_F(Fa)
Saisie_cle(cle) Objet Type/Nature

Remplir_M(M,cle) Fa Fiche

Crypte(Fa,M) Cle Chaine

Fin M Mat

Remplir_F,Saisie_cle Procedure
Remplir_M,Crypte

Nouveau Type

E=enregistrement
Np :chaine
Cin :chaine
Tel :chaine

Login :chaine
Pass :chaine
Fin E
Mat=Tableau de 5 lignes * 5 colonnes de caracteres
Fiche=fichier de E

!! NB !! il ya d’autres solutions acceptable


--Faire le TDOL de chaque module--

Vous aimerez peut-être aussi