Vous êtes sur la page 1sur 8

Formation Algorithme

Algorithme Exercice Solution


Actions simples Algorithme somme N-premiers-entiers Exercice 1 : Var N : Entier Somme : Rel Ecrire un algorithme qui permet de Dbut calculer la somme des N premiers Lire (entrez la valeur de N=,N) entiers sachant que cette somme est Somme N*(N+1)/2 gal N(N+1)/2 Ecrire (la somme de, N,premiers entiers est, Somme) Fin Algorithme Saluer_utilisateur Exercice 2: Var Prnom : Chaine [30] Ecrire un algorithme qui permet dafficher, la question suivante : quel est Dbut Lire (Quel est ton prnom, Prnom) ton prnom ? Lutilisateur doit alors Ecrire (Bonjour, Prnom) saisir ton prnom et lalgorithme doit Fin finalement afficher lcran : bonjour ! Suivi du prnom saisi. Algorithme nom_complet_de_llve Exercice 3 : Var Nom,Prnom : Chaine [30] Ecrire un algorithme qui permet Nom_complet : Chaine [60] dafficher les noms complets des lves. Dbut Lire (entrer le nom de llve,Nom,entrer le prnom,Prnom) Nom_complet= Nom II II Prnom Ecrire (le nom complet de llve,Nom_complet) Fin Algorithme Somme_diffrence_2entiers Exercice 4 : Var Entier 1, Entier 2 : Entier Ecrire un algorithme qui permet de Somme, diffrence : Entier calculer la somme et la diffrence de 2 Dbut nombres entiers. Lire (entrez la valeur du premier nombre, Entier 1) Lire (entrez la valeur du deuxime nombre, Entier 2) Somme Entier 1 + Entier 2 Diffrence Entier 1 - Entier 2 Ecrire (Entier1,+, Entier 2,=, Somme) Ecrire (Entier1,-, Entier 2,=, Diffrence) Fin Algorithme hypothnuse_triangle Exercice 5 : Ecrire un algorithme permet de calculer Var Base, Ct_adjacent, Hypothnuse : Rel Carr_base, Carr_ct_adjacent, lhypothnuse dun triangle Carr_hypothnuse : Rel Dbut Lire (Base, Ct_adjacent) Carr_base Base Carr_ct_adjacent Ct_adjacent Carr_hypothnuse Carr_base + Carr_ct_adjacent Hypothnuse racine-2(Carr_hypothnuse) Ecrire (Hypothnuse) Fin

Cours de formation assur par ADNANE pour lINIRGI de Zagora

Page 1

Formation Algorithme Actions slective (if, iif) Algorithme test_de_note Exercice 6 : Ecrire un algorithme permet de tester la Var Note : simple validit dune note (entre 0 et 20). Dbut lire (Note) Si Note <0 et > 20 alors Ecrire (Note incorrecte) Sinon Ecrire (Note correcte) Finsi Fin Algorithme min_max_2_nombre Exercice 7 : Var Nombre 1, Nombre 2, Plus_grand, Plus_petit : Entier Ecrire un algorithme qui dtermine le Dbut plus petit et plus grand de 2 nombre. Lire (Nombre 1, Nombre 2) Si Nombre 1 >= Nombre 2 alors Dbut
Plus_grand Nombre 1 Plus_petit Nombre 2 Ecrire (Plus_grand, Plus_petit)

Fin Si non Dbut


Plus_grand Nombre 2 Plus_petit Nombre 1 Ecrire (Plus_grand, Plus_petit )

Fin Finsi Ecrire (Plus_grand, Plus_petit ) Fin Algorithme calculer_note_correspondant Var : Moyenne : rel Note : caractre Dbut Lire (moyenne) Si moyenne 90 Alors note "A" Sinon Si moyenne 80 Alors note "B" Sinon Si moyenne 70 Alors note "C" Sinon Si moyenne 60 Alors note "D" Sinon note "E" Fin Si Fin Si Fin Si FinSi crire (La note est : , note) Fin Page 2

Exercice 8 :
crire un algorithme pour calculer la note correspondant la moyenne dun tudiant sachant que : 90 100 = A 80 89 = B 70 79 = C 60 69 = D Moins de 60 = E

Cours de formation assur par ADNANE pour lINIRGI de Zagora

Formation Algorithme

Exercice 9 :

Algorithme quation_1_dgre Ecrire un algorithme permet de rsoudre Var a,b,X : Rel Dbut de lquation du 1re dgre aX+b=0 Lire (a,b) Si a=0 alors Si b=0 alors Ecrire (tout rel est solution) Sinon Ecrire (pas de solution) Sinon Dbut X -b/a Ecrire (X) Fin Fin Algorithme Min_Max_de_trois_nombres Exercice 10 : Var A, B, C : Entier Ecrire un algorithme qui dtermine le Min, Max : Entier Min et le Max de 3 variables A,B,C. Dbut Lire (A, B, C ) Si A<B alors Si A<C alors Dbut Min A Si B>C alors Max B Sinon Max C Fin Sinon Dbut Max B Min C Fin Sinon Si A>C alors Dbut Max A Si B>C Min B Sinon Max B Fin Sinon Dbut Max C Min Fin Ecrire (Min,Max)
Cours de formation assur par ADNANE pour lINIRGI de Zagora

B Fin Page 3

Formation Algorithme Boucle tant que (while) while) Algorithme saisir_note Exercice 11 : Note : Rel Ecrire un algorithme qui permet de saisir Var Dbut une note entre 0 et 20. Lire (Note) Tant que Note<0 ou Note>20 faire Lire (Note) Fin tant que Ecrire (Note) Fin Algorithme saisie Exercice 12 : Ecrire un algorithme qui permet de saisir Var Nom : chaine [30] Dbut les des lves dune classe. La saisie sarrte quand lutilisateur saisit le nom Lire (Nom) Tant que Nom # Fin Faire Fin Lire(Nom) Fin tant que Fin

Exercice 13 :

Algorithme Demande Var N : Entier Ecrire un algorithme qui demande Dbut lutilisateur un nombre compris entre 1 et 3 jusqu' ce que la rponse convienne N=0 Ecrire (Entrez un nombre entre 1 et 3,N) Tant que N<1 ou N>3 Faire Lire (N) Si N<1 ou N>3 Alors Ecrire (Saisie errone recommencez ) Finsi Fin tant que Fin Boucle Rpter Algorithme saisir_note Exercice 14 : Note : Rel Ecrire un algorithme qui permet de saisir Var Dbut une note entre 0 et 20. Lire (Note) Rpter Lire(Note) Jusqu Note>0 ou Note<20 Ecrire (Note) Fin

Exercice 15 :
Ecrire un algorithme permet de lire de notes et calculer leur moyenne. La saisie sarrte quand lutilisateur saisit une note <0.

Solution 1
Algorithme saisie_moyenne Var Note, Moyenne, Somme : Rel Moyenne : Entier Dbut Somme 0 Compteur 0 Lire (Note) Tant que Note>=0 faire Page 4

Cours de formation assur par ADNANE pour lINIRGI de Zagora

Formation Algorithme Compteur Somme Lire (Note) Fin tant que Si Compteur 0 Moyenne =Somme/Compteur Ecrire (Moyenne) Fin Solution 2 Algorithme saisie_moyenne Var Note, Moyenne, Somme : Rel
Moyenne : Entier

Compteur +1 Somme + Note

Dbut
Somme Compteur 0 0

Rpter Lire(Note)
Compteur Compteur + 1 Somme Somme+Note Jusqu Note<0 Si Compteur 0 Moyenne =Somme/Compteur

Ecrire (Moyenne) Fin Boucle Pour (For) Solution 1 Exercice 16 : Algorithme somme_de_ N_ premiers Ecrire un algorithme qui permet de Var Compteur, N,S : Entier calculer la somme des N premiers Dbut entiers tels que. S 0 S=1+2+3++ (N-1) +N Compteur 1 Tant que Compteur<=N Faire S S+compteur Compteur Compteur+1 Fin tant que Ecrire (S) Fin Solution 2 Algorithme somme_de_ N_ premiers Var Compteur, N, S : Entier Dbut
S 0 Pour Compteur 1 N, 1 Faire S

S+Compteur

Exercice 17:
Ecrire un algorithme permet de calculer le factoriel dun nombre N entier N !=1*2*3**(N-1)*N

Fin Pour Ecrire (S) Fin Algorithme factoriel-N i, N, factoriel : Entier Var Dbut Lire(N) Page 5

Cours de formation assur par ADNANE pour lINIRGI de Zagora

Formation Algorithme Factoriel =1 Pour i=1 N Faire Factoriel factoriel * i Fin Pour Ecrire (factoriel) Fin Algorithme salaire_annuel Exercice 18 : Ecrire un algorithme permet de calculer Var Salaire_annuel, salaire_mensuel : Rel Compteur : Entier le salaire annuel dun employeur. Dbut Salaire annuel 0 Pour compteur = 1 12 Faire Lire (Salaire mensuel) Salaire_annuel salaire annuel + salaire mensuel Fin Pour Ecrire (salaire annuel) Fin Tableaux Algorithme calcul_salaire Exercice 19 : Ecrire un algorithme permet de calculer Var salaire_mensuel : Tableau [1..12] de Rel Salaire_annuel : Rel le salaire annuel dun employeur. i : Entier Dbut Pour i 1 jusqu 12 Faire Lire (Salaire mensuel[i]) Fin Pour Salaire_annuel 0 Pour i 1 jusqu 12 Faire Salaire_annuel salaire annuel + salaire mensuel[i] Fin Pour Ecrire (salaire annuel) Fin Algorithme Somme_tableau Exercice 20 : Faire la somme de 2 tableaux T1 et T2 de Type T : Tableau [1..30] de rel Var T3, T2, T1 : T 30 rels i : Entier T1 Dbut Pour i 1 jusqu 30 Faire T2 Lire (T1 [i], T2 [i]) T3[i] T1 [i] + T2 [i] T3 Fin Pour Pour i 1 jusqu 30 Faire Ecrire (T3[i]) Fin Pour Fin Algorithme produit_scalaire Exercice 21 : Faire le produit scalaire de 2 Tableau du Type T : Tableau [1..20] dentier T2, T1 : T Var 20 entiers i, PS : Entier Dbut
Cours de formation assur par ADNANE pour lINIRGI de Zagora

Page 6

Formation Algorithme Pour i 1 jusqu 20 Faire Lire (T1 [i], T2 [i])

Fin Pour PS 0 Pour i 1 jusqu 20 Faire PS PS + T1 [i]*T2 [i] Fin Pour Ecrire (PS) Fin Algorithme P_Petit_tableau Exercice 22 : Var T : Tableau [1..20] dentier Ecrire un algorithme qui permet de lire i, j, min : Entier un tableau du 20 entiers et de dterminer le petit aussi que son indice. Dbut Pour j 1 jusqu 20 Faire Exemple : Lire (T1 [j]) 5 10 2 20 4 Fin Pour i 1 min T[1] Pour i 2 jusqu 20 Faire Si T[j] < min Alors Dbut min i Fin Fin Pour Ecrire (min,i) Fin Algorithme lments_nuls Exercice 23 : T : Tableau [1..200] dentier Var Ecrire un algorithme qui permet de i, nb_nul : Entier compter le nombre dlments nuls dun Dbut tableau de N lments. nb_nul 0 lire(N) Pour i 1 jusqu N Faire Lire(T[i]) Si T[i] =0 Alors nb_nul Fin Pour Ecrire (il y a , nb_nul, lments nuls) Fin Algorithme trier_tableau Exercice 24: Var T : Tableau [1..200] dentier Etant donne un tableau T de N TP, TN : Tableau [1..200] dentier lments, crire un algorithme qui i, j, k : Entier permet de transfrer ses lments Dbut positifs dans un tableau TPOSITIF et ses lire(N) lments ngatifs dans un tableau j 1 TNEGATIF k 1 1 jusqu N Faire Pour i Lire(T[i]) Si T[i] >0 Alors
Cours de formation assur par ADNANE pour lINIRGI de Zagora

T[j] j

nb_nul +1

Page 7

Formation Algorithme TP[j] j Fin Sinon Dbut TN[k] k Fin Fin Pour Fin Algorithme trier_tableau Var T : Tableau [1..200] dentier i, m, N : T i, PS : Entier Dbut Lire (N) Lire(m) Pour i 1 jusqu N Faire Lire (T [i]) Fin Pour Pour i N+1 jusqu 2 Faire T [i] T [i-1] Fin Pour T [1] m Fin T[i] j+ 1

T[i] k+1

Exercice 25:
Etant donne un tableau T de N lments, crire un algorithme qui permet de lire un nombre m et de linsrer au dbut du tableau.

On peut dsormais choisir un langage de programmation cible, et traduire le prcdent algorithme pour en obtenir le programme correspondant.

Cours de formation assur par ADNANE pour lINIRGI de Zagora

Page 8