0% ont trouvé ce document utile (0 vote)
50 vues16 pages

Exercices d'algorithmique en pseudo-code

Transféré par

yazidmissaoui
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 DOC, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
50 vues16 pages

Exercices d'algorithmique en pseudo-code

Transféré par

yazidmissaoui
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 DOC, PDF, TXT ou lisez en ligne sur Scribd

Exemples d'exercices

d'algorithmique corrigs avec


l'analyse descendante via
pseudo-code
EX N1
Soit la suite dfnie par :
Le premier terme U
0
est un entier donn qui dpasse 1.
Le terme U
n
est gal la somme des carrs des chifres de
Cette suite est soit priodique ou stationnaire (constante. !ta"lir les
anal#ses puis les algorithmes permettant d$a%cher les termes de la
suite si elle est constante ou les termes de la priode si la suite est
priodique.
Solution Solution
Analyse
&sultat ' (roc )%che ((*+*,
((*+*,'-+0*,-0.U0.
&pter
++/1
,-+.0n SCC(,-+11.
(0n &echerche(,-+.*0*+11*,
2usqu$ (,-+.'1 ou ((3'0
U0'- .
&pter
U0'4onne(54onner un entier 31 5
2usqu$ U031
Le tableau de dclaration des nouveaux types
Type
,a" ' ,a"leau de 61 7ntiers {les cases sont numrotes
partir de 0}
Le tableau de dclaration des objets globaux
8"9et ,#pe:+atu
re
&;le
( 7ntier <<.
+ 7ntier <<.
U0 7ntier <<.
, ,a" <<.
1
SCC 0onction <<.
&echerc
he
0onction <<.
Algorithme
0 4"ut 7=1
1 &pter
!crire(54onner un entier 31 5
Lire(U0
2usqu$ U031
6 +0* ,-0.U0
&pter
++/1
,-+.0n SCC(,-+11.
(0n &echerche(,-+.*0*+1
1*,
2usqu$a (,-+.'1 ou ((3'0
> (roc )%che((*+*,
? 0in 7=1
Analyse de la fonction !! "#ersion itrative$
Analyse
&sultat' SCC
SCCS
S'-S0.
&pter
SS/Carr(+ mod 10
+ + di@ 10
2usqu$ + '0
Le tableau de dclaration des objets locaux
8"9
et
,#pe:+atu
re
&;le
S 7ntier <<.
Algorithme
0 4eA 0n SCC(+:7ntier:7ntier
1 S0
&pter
SS/Carr(+ mod 10
++ di@ 10
2usqu$ + ' 0
6 SCCS
2
> 0in SCC
Analyse de la fonction !! "#ersion %cursive$
Analyse
&sultat' - .
Si +'0 )lors SCC0
Sinon
SCC0n SCC(+ di@10/ Carr(+
mod 10
0in Si
Algorithme
0 4eA 0n SCC(+:7ntier:7ntier
1 Si +'0 )lors SCC0
Sinon
SCC0n SCC(+ di@ 10/ Carr(+ mod
10
0in Si
6 0in SCC
Analyse de la fonction %echerche "#ersion &trative$
Analyse
&sultat' &echerche
&echerche'- .
Si ,-B.'C )lors &echerche B
Sinon &echerche 11
0in Si
B' - B411 .
&pter
BB/1
2usqu$ (,-B.'C ou(B'0
Le tableau de dclaration des objets locaux
8"9
et
,#pe:+atu
re
&;le
B 7ntier <<.
Algorithme
0 4eA 0n &echerche(C*4*0:7ntierD
,:,a"7ntier
1 B411
3
&pter
BB/1
2usqu$ (,-B.'C ou(B'0
6 Si ,-B.'C )lors &echerche B
Sinon &echerche 11
0in Si
> 0in &echerche
Analyse de la fonction %echerche "#ersion
%cursive$
Analyse
&sultat' - .
Si ,-4.'C )lors &echerche 4
Sinon Si 430 )lors &echerche
11
Sinon
&echerche 0n
&echerche(C*4/1*0*,
0in Si
Algorithme
0 4eA 0n &echerche(C*4*0:7ntierD ,:,a"7ntier
1 Si ,-4.'C )lors &echerche 4
Sinon Si 430 )lors &echerche 11
Sinon &echerche 0n
&echerche(C*4/1*0*,
0in Si
6 0in &echerche
Analyse de la procdure A'che
Analyse
&sultat' - .
Si ,-+.'1 )lors
(our B de 0 + 0aire
!crire(,-B.
0in (our
Sinon
(our B de ( + Aaire
!crire(,-B.
0in (our
0in si
4
Le tableau de dclaration des objets locaux
8"9
et
,#pe:+atu
re
&;le
B 7ntier <<.
Algorithme
0 4eA (roc )%che((*+:7ntierD ,:,a"
1 Si ,-+.'1 )lors
(our B de 0 + 0aire
!crire(,-B.
0in (our
Sinon
(our B de ( + Aaire
!crire(,-B.
0in (our
0in si
6 0in )%che
EX N(
!ta"lir les anal#ses et les algorithmes permettant de dterminer les
deu= entiers ) et E qui reprsentent respecti@ement le numrateur
et le dnominateur de la somme des + Aractions d$entiers.
Exemple:
Solution Solution
Analyse
&sultat' !crire(5La somme est '
5*)*5:5*E
()*E'(roc
Somme(+*+um*4en*)*E
+'- .
&pter
+ ' donne (5+ ' 5
2usqu$ + dans-1..F0.
(+um*4en'(roc
Lecture(+*+um*4en
Le tableau de dclaration des nouveaux types
Type
,a" ' ,a"leau de F0
5
7ntiers
Le tableau de dclaration des objets globaux
)bje
t
*ype+Nat
ure
%,l
e
) 7ntier <<.
E 7ntier <<.
+ 7ntier <<.
+um ,a" <<.
4en ,a" <<.
Lectu
re
(rocdure <<.
Som
me
(rocdure <<.
Algorithme
0 4"ut 7=?
1 &pter
!crire(5+ ' 5* Lire(+
2usqu$ + dans -1..F0.
6 (roc Lecture(+*+um*4en
> (roc somme(+*+um*4en*)*E
? !crire(5La somme est '
5*)*5:5*E
F 0in 7=?
Analyse de la procdure Lecture
)nal#se
&sultat' (+um*4en
(+um*4en ' - .
(our B de 1 + Aaire
+um-B.'4onne (5+um-5*B*5.'5
&pter
4en-B.'4onne
(54en-5*B*5.'5
2usqu$ 4en-B.G30
C0n
(HC4()"s(+um-B.*)"s(4en-B.
+um-B.+um-B. di@ C
4en-B.4en-B. di@ C
0in (our
Le tableau de dclaration des objets locaux
6
)bj
et
*ype+Nat
ure
%,l
e
B 7ntier <<.
(HC
4
0onction <<.
Algorithme
0 4eA (roc Lecture(+:7ntierD Iar
+um*4en: ,a"
1 (our B de 1 + Aaire
!crire(5+um-5*B*5.'5* Lire(+um-B.
&pter
!crire(54en-5*B*5.'5* Lire(4en-B.
2usqu$ 4en-B.G30
C0n
(HC4()"s(+um-B.*)"s(4en-B.
+um-B.+um-B. di@ C
4en-B.4en-B. di@ C
0in (our
6 0in Lecture
Analyse de la procdure omme
)nal#se
&sultat' ()*E
()*E ' -)0* E1 .
(our B de 1 + Aaire
))J4en-B./EJ+um-B.
EEJ4en-B.
C0n
(HC4()"s()*)"s(E
)) di@ C
EE di@ C
0in (our
Le tableau de dclaration des objets locaux
)bj
et
*ype+Nat
ure
%,l
e
B 7ntier <<.
(HC
4
0onction <<.
Algorithme
0 4eA (roc Somme (+:7ntierD +um*4en:,a"D Iar
7
)*E:7ntier
1 )0* E1
(our B de 1 + Aaire
))J4en-B./EJ+um-B.
EEJ4en-B.
C0n (HC4()"s()*)"s(E
)) di@ C
EE di@ C
0in (our
60in Somme
Analyse de la procdure -.!/
Analyse
&sultat' - .
Si E ' 0 )lors (HC4 )
Sinon (HC4 0n (HC4(E* )
mod E
0in Si
Algorithme
0 4eA 0n (HC4()*E:7ntier:7ntier
1) Si E ' 0 )lors (HC4 )
Sinon (HC4 0n (HC4(E* )
mod E
0in Si
6 0in (HC4
EX N0
!ta"lir les anal#ses et les algorithmes permettant de con@ertir
un nom"re romain & @ers son qui@alent ara"e ).
Exemples:
% A
5KKKCCBC5 >06
L
54CCCLBI5 MF?
5KCKLCCIBB
B5
1LN
M
5KKC5 601
0
Solution Solution
Analyse
8
&sultat'!crire()
)0n con@ar(&
&'4onne(5Saisir un nom"re
romain 5
Le tableau de dclaration des objets globaux
)bje
t
*ype+Nat
ure
%,l
e
) 7ntier <<.
& Chaine <<.
Con@
ar
0onction <<.
Algorithme
0 4"ut 7=O
1 !crire(5Saisir un nom"re
romain
Lire(&
6 )0n con@ar(&
> !crire()
? 0in 7=O
Analyse de la fonction !onvar version &trative
Analyse
&sultat ' Con@ar
Con@arS
S'-S0n Chifre(&-Long(&..
(our B de 1 Long(& 11 0aire
Si 0n Chifre(&-B.G0n Chifre(&-B/1.
)lors SS10n Chifre(&-B.
sinon
SS/0n Chifre(&-B.
0in Si
0in (our
Le tableau de dclaration des objets locaux
)bje
t
*ype+Nat
ure
%,l
e
B 7ntier <<.
S 7ntier <<.
9
Chifr
e
0onction <<.
Algorithme
0 4eA 0n Con@ar(&:Chaine:7ntier
1 S0n Chifre(&-Long(&.
(our B de 1 Long(& 11 0aire
Si 0n Chifre(&-B.G0n
Chifre(&-B/1.
)lors SS10n Chifre(&-B.
Sinon SS/0n Chifre(&-B.
0in Si
0in (our
6 Con@arS
> 0in Con@ar
Analyse de la fonction !onvar version %cursive
Analyse
&sultat ' - .
Si Long(& '0 )lors Con@ar0 sinon
Si Long(& '1 )lors Con@ar0n Chifre(&-1.
Sinon Si 0n Chifre(&-1.G0n Chifre(&-6. )lors
Con@ar 0n Con@ar(Souchaine(&*6* Long(&1110n Chifre(&-1.
Sinon Con@ar 0n Con@ar(Souchaine(&*6* Long(&11/0n
Chifre(&-1.
0in Si
Le tableau de dclaration des objets locaux
)bje
t
*ype+Nat
ure
%,l
e
Chifr
e
0onction <<.
Algorithme
0 4eA 0n Con@ar(&:Chaine:7ntier
1 Si Long(& '0 )lors Con@ar0 sinon
Si Long(& '1 )lors Con@ar0n Chifre(&-1.
Sinon Si 0n Chifre(&-1.G0n Chifre(&-6. )lors
Con@ar 0n Con@ar(Souchaine(&*6* Long(&1110n
Chifre(&-1.
10
Sinon Con@ar 0n Con@ar(Souchaine(&*6* Long(&11/0n
Chifre(&-1.
0in Si
6 0in Con@ar
Analyse de la fonction !hi1re
Analyse
&sultat ' Chifre
Chifre+
+ '- .
Selon Ka9us(C 0aire
5B5: +1
5I5:+F
5C5:+10
5L5:+F0
5C5:+100
545:+F00
5K5:+1000
0in Selon
EX N2
Soit une entreprise qui comporte un nom"re fni dPemplo#s D
Chaque emplo# est caractris par un code (+umrotation
automatique* un nom* un salaire* une catgorie (1161> ou ?* un
se=e et une anciennet.
!ta"lir un algorithme qui permet la cration dPun fchier contenant
les emplo#s* la saisie des emplo#s (cette saisie se termine par un
salaire nul qui ne doit pas Qtre tenu en compte* puis augmenter les
salaire par un montant qui est gale au dou"le de lPanciennet enfn
crer un fchier comportant les hommes dans lPordre dcroissant des
catgories et a%cher les rsultats calculs.
Solution Solution
Analyse
&sultat'(roc )%che(0A
(roc )%che(R
0A' (roc )ugmenter(0
0'(roc Saisie(0
R'(roc Rommes(0A*R
Le tableau de dclaration des nouveaux types
Type
11
7mplo#e'7nregistreme
nt
Code: Kot
Cat* )nc: 8ctet
+om:
chaine->0.
Sal: &el
Se=e: CaractSre
0in 7mplo#e
7ntreprise' 0ichier
d$emplo#e
Le tableau de dclaration des objets globaux
8"9et ,#pe:+atu
re
&;le
0 7ntreprise <<.
R 7ntreprise <<.
)%che (rocdure <<.
)ugmentat
ion
(rocdure <<.
Saisie (rocdure <<.
Rommes (rocdure <<.
Analyse de la procdure saisie
Analyse
&sultat'0
0 ' -)ssocier(0*5c:Templo#es.dat5*
recrer(A* B0.
&pter
BB/1
[Link]
7.+om'donne (5<<<.5
&pter
[Link]'donne(5<<<5
2usqu$ 7.Sal3'0
&pter
[Link]'donne(5<<<5
2usqu$ [Link] dans-1..?.
&pter
[Link]=e'donne(5<<<5
2usqu$ [Link]=e
dans-505*5A5*5R5*5h5.
12
&pter
7.)nc'donne(5<<<5
2usqu$ 7.)nc 3'0
Si 7.Sal30 )lors !crire(0*7
0in Si
2usqu$ [Link]'0
Le tableau de dclaration des objets locaux
)bj
et
*ype+Nat
ure
%,l
e
7 7mplo#e <<.
Algorithme
3$ 4eA (roc saisie(@ar A:7ntreprise
1$ )ssocier(0*5c:Templo#es.dat5*
recrer(A* B0
&pter
BB/1
[Link]
7.+om'donne (5<<<.5
&pter
[Link]'donne(5<<<5
2usqu$ 7.Sal3'0
&pter
[Link]'donne(5<<<5
2usqu$ [Link] dans-1..?.
&pter
[Link]=e'donne(5<<<5
2usqu$ [Link]=et
dans-505*5A5*5R5*5h5.
&pter
7.)nc'donne(5<<<5
2usqu$ 7.)nc 3'0
Si 7.Sal30 )lors !crire(0*7
0in Si
2usqu$ [Link]'0
($ 4ermer"f$
1
0$ 0in saisie
Analyse de la procdure Augmentation
1
Pour scuriser les donnes d'un fichier, il est recommand de fermer le fichier ar!s tout traitement"
13
Analyse
&sultat'0
0 ' -8u@rir(0 .
(our B de 0 ,ailleUfchier(011 0aire
Lire(0*7
[Link]/6J7.)nc
(ointer(0*B
!crire(0*7
0in (our
Le tableau de dclaration des objets locaux
)bj
et
*ype+Nat
ure
%,l
e
7 7mplo#e <<.
B 7ntier <<.
Algorithme
0 470 (roc )ugmentation(Iar
0:7ntreprise
1 8u@rir(0
(our B de 0 ,ailleUfchier(011 0aire
Lire(0*7
[Link]/6J7.)nc
(ointer(0*B
!crire(0*7
0in (our
($ 4ermer"4$
> 0in )ugmentation
Analyse de la procdure 5ommes
Analyse
&sultat'R
R ' -)ssocier(R*5c:Thommes.dat5* recrer(R .
(our B de ? 10aire
8u@rir(0
(our V de 0 ,ailleUfchier(011 0aire
Lire(0*7
Si [Link]'B )lors !crire(R*B
0insi
14
0in (our
0in (our
Le tableau de dclaration des objets locaux
)bj
et
*ype+Nat
ure
%,l
e
7 7mplo#e <<.
B 7ntier <<.
V 7ntier <<.
Algorithme
0 4eA (roc Rommes(Iar
0*R:7ntreprise
1 )ssocier(R*5c:Thommes.dat5*
recrer(R
(our B de ? 1 0aire
8u@rir(0
(our V de 0 ,ailleUfchier(011
0aire
Lire(0*7
Si [Link]'B )lors !crire(R*B
0insi
0in (our
0in (our
($ 4ermer"4$
0$ 4ermer"5$
? 0in Rommes
Analyse de la procdure A'che
Analyse
&sultat' -8u@rir(0.
(our V de 0 ,ailleUfchier(011 0aire
Lire(0*7
)@ec 7 0aire
!crire(Code:>* +om:>0* Sal:M:>* Se=e:>*
)nc:>* Cat:>
0in a@ec
0in (our
Le tableau de dclaration des objets locaux
15
)bj
et
*ype+Nat
ure
%,l
e
7 7mplo#e <<.
V 7ntier <<.
Algorithme
0 4eA (roc )%che(Iar 0:7ntreprise
1 8u@rir(0
(our V de 0 ,ailleUfchier(011 0aire
Lire(0*7
)@ec 7 0aire
!crire(Code:>* +om:>0* Sal:M:>* Se=e:>* )nc:>*
Cat:>
0in a@ec
0in (our
($ 4ermer"4$
> 0in )%che
16

Vous aimerez peut-être aussi