Vous êtes sur la page 1sur 74

Universit Abdelmalek Essadi

Facult des Sciences et Techniques


- Tanger -

Algorithme et Langage C
Exercices
Prsent par :
Mme Fatima IBRAHIMI

Prof.Fatima IBRAHIMI

Anne Universitaire 2012/2013

Prof.Fatima IBRAHIMI

Algorithmique

Algorithme
Prof.Fatima IBRAHIMI

Exercice 1
Quelles seront les valeurs des variables A et B aprs excution
des instructions suivantes ?
Var A, B : Entier
dbut
A1
BA+3
A3
Fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice 2
Quelles seront les valeurs des variables A, B et C aprs
excution des instructions suivantes ?
Var A, B, C :Entier;
dbut
A5
B3
CA+B
A2
CBA
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice 3
Quelles seront les valeurs des variables A et B aprs excution
des instructions suivantes ?
Var A, B : Entier
dbut
A5
BA+4
AA+ 1
BA4
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice 4
Quelles seront les valeurs des variables A, B et C aprs
excution des instructions suivantes ?
Var A, B, C : Entier;
dbut
A 3;
B 10;
C A + B;
B A + B;
A C;
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice 5
Quelles seront les valeurs des variables A et B aprs excution
des instructions suivantes ?
Var A, B : Entier
dbut
A5
B2
AB
BA
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice 6
Ecrire un algorithme permettant dchanger les valeurs de
deux variables A et B.
algorithme permutation;
Var A, B, C : Entier;
dbut
Lire(A);
Lire (B);
C A;
A B;
B C;
Ecrire(A);
Ecrire(B);
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice 7
On dispose de trois variables A, B et C. Ecrivez un algorithme
transfrant B la valeur de A, C la valeur de B et A la
valeur de C.
algorithme permutation;
Var A, B, C, D : Entier;
dbut
Lire(A); Lire (B); Lire(C);
D C;
C B;
B A;
A D;
Ecrire(A); Ecrire(B); Ecrire(C);
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice 8
Que produit lalgorithme suivant ?
Var A, B, C : Caractres
dbut
A "423 " ;
B "12 " ;
C A + B;
fin
Il ne peut produire quune erreur dexcution, puisquon ne peut
pas additionner des caractres.

Algorithme
Prof.Fatima IBRAHIMI

Exercice 9
Que produit lalgorithme suivant ?
Var A, B, C : Caractres
dbut
A "423 " ;
B "12 " ;
C A & B;
fin

En revanche, on peut les concatner. A la fin de lalgorithme, C


vaudra donc "42312".

Algorithme
Prof.Fatima IBRAHIMI

Exercice 10
Quel rsultat produit le programme suivant ?
algorithme double;
Var val, Double: entier;
dbut
Val 231;
Double Val * 2;
Ecrire (Val);
Ecrire (Double);
fin
On verra apparatre lcran 231, puis 462 (qui vaut 231 * 2)

Algorithme
Prof.Fatima IBRAHIMI

Exercice 11
Ecrire un programme qui demande un nombre lutilisateur,
puis qui calcule et affiche le carr de ce nombre.
algorithme carr;
Var nb, carr : Entier;
dbut
Ecrire( "Entrez un nombre : ");
Lire (nb);
carr nb * nb;
Ecrire ( "Son carr est : " , carr);
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice 12
Ecrire un programme qui lit le prix HT dun article, le
nombre darticles et le taux de TVA, et qui fournit le prix total
TTC correspondant. Faire en sorte que des libells
apparaissent clairement. (TTC=NA*HT*(1+TVA))
algorithme prix TTC dun article;
var nb, pht, ttva, pttc :rel:
dbut
Ecrire ("Entrez le prix hors taxes : ");
Lire (pht);
Ecrire( "Entrez le nombre darticles :" );
Lire (nb);
Ecrire ("Entrez le taux de TVA :");
Lire (ttva);
pttc nb * pht * (1 + ttva);
Ecrire ("Le prix toutes taxes est : ", pttc);
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice 13
Ecrire un algorithme qui demande un nombre lutilisateur,
et linforme ensuite si ce nombre est positif ou ngatif (on
laisse de ct le cas o le nombre vaut zro).
algorithme test positif ou ngatif;
Var n : Entier;
dbut
Ecrire ("Entrez un nombre : " );
Lire (n);
Si n > 0 Alors
Ecrire ("Ce nombre est positif);
Sinon
Ecrire ("Ce nombre est ngatif ");
Finsi
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice 14
Ecrire un algorithme qui demande deux nombres lutilisateur et
linforme ensuite si leur produit est ngatif ou positif (on laisse de
ct le cas o le produit est nul). Attention toutefois : on ne doit
pas calculer le produit des deux nombres.
algorithme test produit positif ou ngatif;
Var m, n : Entier;
dbut
Ecrire ("Entrez deux nombres : ");
Lire (m); Lire(n);
Si (m > 0 ET n > 0) OU (m < 0 ET n < 0) Alors
Ecrire ("Leur produit est positif ");
Sinon
Ecrire ("Leur produit est ngatif ");
Finsi
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice 15
Ecrire un algorithme qui demande trois noms lutilisateur et
linforme ensuite sils sont rangs ou non dans lordre
alphabtique.
algorithme ordre alphabtique;
Var a, b, c : Caractre
dbut
Ecrire ("Entrez successivement trois noms : ");
Lire(a); Lire(b); Lire(c);
Si (a < b ET b < c) Alors
Ecrire ("Ces noms sont classs alphabtiquement");
Sinon
Ecrire ("Ces noms ne sont pas classs ");
Finsi
fin

Algorithme

Exercice 16

Prof.Fatima IBRAHIMI

Ecrire un algorithme algorithme test positif ou ngatif;


qui
demande
un Var n : Entier;
dbut
nombre lutilisateur,
Ecrire ("Entrez un nombre : " );
et linforme ensuite si
Lire (n);
ce nombre est positif ou
Si n < 0 Alors
ngatif (on inclut cette
Ecrire ("Ce nombre est ngatif " );
fois le traitement du
Sinon
cas o le nombre vaut
Si n = 0 Alors
Ecrire ("Ce nombre est nul " );
zro).
Sinon
Ecrire ("Ce nombre est positif " );
Finsi
Finsi
fin

Algorithme

Exercice 17

Prof.Fatima IBRAHIMI

Ecrire un algorithme qui demande deux nombres


lutilisateur et linforme ensuite si le produit est ngatif ou
positif (on inclut cette fois le traitement du cas o le produit
peut tre nul). Var m, n : Entier;
dbut
Ecrire ("Entrez deux nombres : ");
Lire (m); Lire(n);
Si (m = 0 OU n = 0) Alors
Ecrire ("Le produit est nul ");
Sinon
Si (m < 0 ET n < 0) OU (m > 0 ET n > 0) Alors
Ecrire ("Le produit est positif ");
Sinon
Ecrire "Le produit est ngatif
Finsi
Finsi
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice 18
Ecrire un algorithme qui demande lge dun enfant lutilisateur.
Ensuite, il linforme de sa catgorie :
"Poussin" de 6 7 ans
"Pupille" de 8 9 ans
"Minime" de 10 11 ans
"Cadet" aprs 12 ans
Peut-on concevoir plusieurs algorithmes quivalents menant ce
rsultat ?

Algorithme
Prof.Fatima IBRAHIMI

Exercice 18
Var age : Entier;
dbut
Si (age >= 8) Alors
Ecrire ("Entrez lge de lenfant : " ); Ecrire ("Catgorie Pupille " );
Sinon
Lire (age);
Si (age >= 6) Alors
Si (age >= 12) Alors
Ecrire ("Catgorie Poussin " );
Ecrire ("Catgorie Cadet " );
Finsi
Sinon
Finsi
Si (age >= 10) Alors
Finsi
Ecrire ("Catgorie Minime " ); Finsi
Sinon
fin

Algorithme

Exercice 19

Prof.Fatima IBRAHIMI

Ecrire un algorithme qui demande un nombre de dpart, et qui


ensuite affiche les dix nombres suivants. Par exemple, si
l'utilisateur entre le nombre 17, le programme affichera les
nombres de 18 27.
algorithme affichage des nombres;
Var N, i : Entier
dbut
Ecrire ("Entrez un nombre :");
Lire (N);
Ecrire ("Les 10 nombres suivants sont : ");
Pour i de N + 1 N + 10 faire
Ecrire (i);
finpour
fin

Algorithme

Exercice 20

Prof.Fatima IBRAHIMI

Ecrire un algorithme qui demande un nombre de dpart, et qui


calcule la somme des entiers jusqu ce nombre. Par exemple, si
lon entre 5, le programme doit calculer :1 + 2 + 3 + 4 + 5 = 15
algorithme Somme;
Var N, i, Som : Entier;
dbut
Ecrire ("Entrez un nombre :" );
Lire (N);
Som 0;
Pour i de 1 N faire
Som Som + i;
finpour
Ecrire ("La somme est : ", Som );
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice 21
Ecrire un algorithme qui demande un nombre de dpart, et qui
calcule sa factorielle.
algorithme Factorielle;
Var N, i, F: Entier;
dbut
Ecrire ("Entrez un nombre :" );
Lire (N);
F 1;
Pour i de 2 N faire
F F * i;
finpour
Ecrire ("La factorielle est : ", F);
fin

Algorithme

Exercice 22-A

Prof.Fatima IBRAHIMI

Ecrire un algorithme qui demande successivement 20 nombres


lutilisateur, et qui lui dit ensuite quel tait le plus grand parmi ces
20 nombres.
algorithme PG_NBR parmis 20;
Var N, i, PG : Entier;
dbut
PG 0;
Pour i de 1 20 faire
Ecrire ("Entrez un nombre :");
Lire (N);
Si i = 1 ou N > PG Alors
PG N;
FinSi
Ecrire ("Le nombre le plus grand tait : ", PG);
finpour
fin

Algorithme

Exercice 22-B

Prof.Fatima IBRAHIMI

Modifiez ensuite lalgorithme pour que le programme affiche de


surcrot en quelle position avait t saisie ce nombre.
algorithme PG_NBR parmis 20;
Var N, i, PG, IPG : Entier;
dbut
PG 0;
Pour i de 1 20 faire
Ecrire ("Entrez un nombre :");
Lire (N);
Si i = 1 ou N > PG Alors
PG N;
Ecrire ("Le nombre le plus grand tait : ", PG);
IPG i;
Ecrire ( Il a t saisi en position : ", IPG);
fin
FinSi
finpour

Algorithme

Exercice 23

Prof.Fatima IBRAHIMI

Rcrire lalgorithme prcdent, mais cette fois-ci on ne connat


pas davance combien lutilisateur souhaite saisir de nombres. La
saisie des nombres sarrte lorsque lutilisateur entre un zro.
algorithme PG_NBR;
FinSi
Var N, i, PG, IPG : Entier;
FinTantQue
dbut
Ecrire ("Le nombre le PG tait : ", PG);
N 1; i 0; PG 0; fin
tant que N 0 faire
Ecrire ("Entrez un nombre : " );
Lire (N);
i i + 1;
Si i = 1 ou N > PG Alors
PG N;
IPG i;

Algorithme
Prof.Fatima IBRAHIMI

Exercice 24
Les habitants de paris paient limpt selon les rgles suivantes :
- les hommes de plus de 20 ans paient limpt
- les femmes paient limpt si elles ont entre 18 et 35 ans
- les autres ne paient pas dimpt
Le programme demandera donc lge et le sexe du parisien, et se
prononcera donc ensuite sur le fait que lhabitant est imposable.

Algorithme

Exercice 24

Prof.Fatima IBRAHIMI

algorithme Impt;
Si C1 ou C2 Alors
Var sex : Caractre;
Ecrire ("Imposable");
Var age : entier;
Sinon
Var C1, C2 : boolen;
Ecrire ("Non Imposable ");
finSi
dbut
Ecrire ("Entrez le sexe (M/F) : "); fin
Lire (sex);
Ecrire ("Entrez lge: ");
Lire (age);
C1 sex = "M" ET age > 20;
C2 sex = "F" ET (age > 18 ET age < 35);

Algorithme
Prof.Fatima IBRAHIMI

Exercice 25
crire un algorithme saisissant 2 variables entires qui calcule et
affiche leur moyenne.
algorithme calculDeMoyenne;
Var a, b : entier;
Var moy : rel;
dbut
Ecrire ("Donnez la 1ire valeur");
Lire (a);
Ecrire ("Donnez la 2ime valeur");
Lire (b);
moy (a+b)/2;
Ecrire ("La moyenne est:", moy);
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice 26
Saisir 3 entiers a, b, c et dterminer dans R les racines de
l'quation ax2 + bx + c = 0.
algorithme RsolutionEquation;
Var a, b, c, delta : rel;
dbut
Ecrire ("Donnez la valeur de a");
Lire (a);
Ecrire ("Donnez la valeur de b");
Lire(b);
Ecrire ("Donnez la valeur de c");
Lire (c);

Algorithme

Exercice 26
si a=0 Alors
Ecrire (Equation de 1er ordre);
si b=0 Alors
si C=0 alors
Ecrire ( Tous rel est solution);
sinon
Ecrire (Pas de solution);
finsi
sinon
Ecrire (Solution unique x=, -C/B);
finsi
sinon
delta B*B-4*A*C;

Prof.Fatima IBRAHIMI

si delta <0 alors


Ecrire (Pas de solution);
sinon
si delta =0 alors
Ecrire ( Solution double : x1=x2=,B/2*A);
sinon
delta racine (delta)
Ecrire (Deux solutions x1=,(-B(delta))/2*A, ; x2=,(B+(delta))/2*A);
finsi
finsi
finsi
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice27
Ecrire un algorithme qui permet donner le rsultat d'un tudiant
un module sachant que ce module est sanctionn par une note
d'oral de coefficient 1 et une note d'crit de coefficient 2. La
moyenne obtenue doit tre suprieure ou gale 10 pour valider le
module.

Algorithme

Exercice27

Prof.Fatima IBRAHIMI

algorithme rsultatEtudiant;
Var N1, N2, Moy : rel;
dbut
Ecrire ( Donnez la note doral);
Lire (N1);
Ecrire ( Donnez la note dcrit);
Lire (N2);
Moy (N1+2*N2)/3
si moy <10 Alors
Ecrire(" Module non valid ");
sinon
Ecrire(" Module valid ");
finsi
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice28
Ecrire l'algorithme permettant d'imprimer le triangle suivant, le
nombre de lignes tant donn par l'utilisateur :
1
12
123
1234
12345
123456
1234567

Algorithme
Prof.Fatima IBRAHIMI

Exercice28
algorithme Triangle;
Var j, n, i : entiers;
dbut
Ecrire (Donnez le nombre de ligne du triangle);
Lire (n);
pour i= 1 n faire
pour j=1 i faire
Ecrire(j)
fin pour
fin pour
fin

Algorithme

Exercice29

Prof.Fatima IBRAHIMI

Ecrire un algorithme qui demande un nombre , calcule et affiche la


somme
algorithme SommeCubique;
Var i, n, som : entier;
dbut
Ecrire ( Donnez n);
Lire (n);
som 0;
pour i=1 n faire
som som+i*i*i
finpour
Ecrire ( La somme cubiques des n entiers est :,som);
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice30
Donnez le rsultat de la multiplication de deux nombres en ne
faisant que des additions.
algorithme multiplication;
Var a, b, i, res : Entier;
dbut
Ecrire (" donnez les valeurs a et b" );
Lire(a); Lire(b);
res 0;
pour i de 1 b faire
res res + a;
finpour
Ecrire (" la multiplication de a*b :" , res);
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice31
Ecrire un algorithme qui dclare et remplisse un tableau contenant
les six voyelles de lalphabet latin.
algorithme Affichage des voyelles;
Tableau Tab(5) : Caractre
dbut
Tab (0) "a " ;
Tab (1) "e " ;
Tab (2) "i " ;
Tab (3) "o " ;
Tab (4) "u " ;
Tab (5) "y " ;
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice32
Ecrire un algorithme qui dclare un tableau de 9 notes, dont on fait
ensuite saisir les valeurs par lutilisateur.
algorithme Saisi des notes;
Tableau Note(8) : entier;
Var i : entier;
dbut
Pour i de 0 8 faire
Ecrire ("Entrez la note numro ", i + 1);
Lire (Notes(i));
finpour
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice33
Ecrivez un algorithme permettant lutilisateur de saisir un
nombre quelconque de valeurs, qui devront tre stockes dans un
tableau. Lutilisateur doit donc commencer par entrer le nombre de
valeurs quil compte saisir. Il effectuera ensuite cette saisie. Enfin,
une fois la saisie termine, le programme affichera le nombre de
valeurs ngatives et le nombre de valeurs positives.

Algorithme

Exercice33

Prof.Fatima IBRAHIMI

algorithme Valeur_neg_pos;
Var n, nbpos, nbneg : entier;
Tableau T( ) : entier ;
dbut
Ecrire ( "Entrez le nombre de valeurs : " );
Lire (n);
Redim T(n-1);
nbpos 0;
nbneg 0;
Pour i de 0 n 1 faire
Ecrire ("Entrez le nombre n ", i);
Lire T(i);
finpour
Si T(i) > 0 alors
Ecrire ("Nombre de valeurs positives : ",
nbpos nbpos + 1;
nbpos);
Sinon
Ecrire ("Nombre de valeurs ngatives : ",
nbneg nbneg + 1;
nbneg);
fin
Finsi

Algorithme

Exercice34

Prof.Fatima IBRAHIMI

Ecrivez un algorithme calculant la somme des valeurs dun tableau


(on suppose que le tableau a t pralablement saisi).
algorithme somme;
Var i, som, N : entier;
Tableau T() : entier;
dbut
Ecrire ( "Entrez le nombre de valeurs : " );
Lire (n);
Redim T(n-1);
som 0;
Pour i de 0 n 1 faire
som som + T(i);
finpour
Ecrire ("Somme des lments du tableau : ", som);
fin

Algorithme

Exercice35

Prof.Fatima IBRAHIMI

Ecrivez un algorithme constituant un tableau, partir de deux


tableaux de mme longueur pralablement saisis. Le nouveau
tableau sera la somme des lments des deux tableaux de dpart.

Algorithme

Exercice35

Prof.Fatima IBRAHIMI

algorithme somme;
Var i, n : entier;
Tableaux T1(), T2(), T3() : entier;
dbut
Ecrire ( "Entrez le nombre de valeurs : " );
Lire (n);
Redim T1(n-1);
Redim T2(n-1);
Redim T3(n-1);
{Lecture des valeur des deux tableau}
Pour i de 0 n 1 faire
T3(i) T1(i) + T2(i);
finpour
fin

Algorithme
Prof.Fatima IBRAHIMI

Exercice36

Toujours partir de deux tableaux prcdemment saisis, crivez


un algorithme qui calcule le schtroumpf des deux tableaux. Pour
calculer le schtroumpf, il faut multiplier chaque lment du
tableau 1 par chaque lment du tableau 2, et additionner le tout.
Par exemple si l'on a :
Tableau 1 :

Tableau 2 :

Le Schtroumpf sera :
6*2 + 6*5 + 6*8 + 6*4 + 7*2 + 7*5 + 7*8 + 7*4 = 247

Algorithme

Exercice36

Prof.Fatima IBRAHIMI

algorithme somme;
Var i, j, N1, N2, S : entier;
Tableaux T1(), T2() : entier;
dbut
Ecrire ( "Entrez la taille de T1 et T2: " );
Lire (N1); Lire (N2);
Redim T1(N1-1); Redim T2(N2-1);
S 0;
Pour i de 0 N1 1 faire
Pour j de 0 N2 1 faire
S S + T1(i) * T2(j);
finpour
finpour
Ecrire( "Le schtroumpf est : ", S);
fin

Algorithme

Exercice37

Prof.Fatima IBRAHIMI

Ecrivez un algorithme qui permette la saisie dun nombre


quelconque de valeurs. Toutes les valeurs doivent tre ensuite
augmentes de 1, et le nouveau tableau sera affich lcran.
algorithme incrmentation du tableau;
Var n, i : entier;
Tableau T() : entier;
dbut
Ecrire ("Entrez le nombre de valeurs : ");
Lire (n);
Ecrire ("Nouveau tableau :");
Redim T(n-1);
Pour i de 0 n 1 faire
Pour i de 0 n 1 faire
T(i) T(i) + 1;
Ecrire ("Entrez le nombre n ", i + 1); Ecrire T(i);
Lire T(i);
finpour
finpour
fin

Algorithme

Exercice38

Prof.Fatima IBRAHIMI

Ecrivez un algorithme permettant, toujours sur le mme principe,


lutilisateur de saisir un nombre dtermin de valeurs. Le
programme, une fois la saisie termine, renvoie la plus grande
valeur en prcisant quelle position elle occupe dans le tableau. On
prendra soin deffectuer la saisie dans un premier temps, et la
recherche de la plus grande valeur du tableau dans un second
temps.

Algorithme

Exercice38
algorithme Afficher Max;
Var n, i, PosMax: entier;
Tableau T() : entier;
Dbut
Ecrire ("Entrez le nbr de valeurs :");
Lire (n);
Redim T(n-1);
Pour i de 0 n 1 faire
Ecrire ("Entrez le nbr n ", i + 1);
Lire (T(i));
finpour
PosMax 0;

Prof.Fatima IBRAHIMI

Pour i de 1 n 1 faire
Si T(i) > T(PosMax) alors
PosMax i;
finsi
finpour
Ecrire ( "Elment le plus grand : ",
T(PosMax));
Ecrire ("Position de cet lment : ",
PosMax);
Fin

Algorithme

Exercice39

Prof.Fatima IBRAHIMI

Toujours et encore sur le mme principe, crivez un algorithme


permettant, lutilisateur de saisir les notes d'une classe. Le
programme, une fois la saisie termine, renvoie le nombre de ces
notes suprieures la moyenne de la classe.

Algorithme

Exercice39

Prof.Fatima IBRAHIMI

algorithme Afficher note suprieur la moyenne;


Var n, i, Som, Moy, nsup : entier;
Tableau T() : entier;
dbut
Ecrire ("Entrez le nombre de notes saisir :");
Lire (n);
Moy Som / n;
Redim T(n-1);
nsup 0;
Pour i de 0 n 1 faire
Pour i de 0 n 1 faire
Ecrire ("Entrez nbr n ", i + 1); Si T(i) > Moy Alors
Lire (T(i));
nsup nsup + 1;
finpour
finsi
Som 0;
finpour
Pour i de 0 n 1 faire
Ecrire (nsup, " lves dpassent la
Som Som + T(i);
moyenne de la classe ");
finpour
fin

Algorithme

Exercice 40

Prof.Fatima IBRAHIMI

Soit un tableau T deux dimensions (12, 8) pralablement rempli


de valeurs numriques. crire un algorithme qui recherche la plus
grande valeur au sein de ce tableau.

Algorithme

Exercice 40

Prof.Fatima IBRAHIMI

algorithme Afficher Max;


Var i, j, imax, jmax: entier;
Tableau T(12, 8) : entier;
dbut
imax 0; jmax 0;
Pour i de 0 12 faire
Pour j de 0 8 faire
Si T(i,j) > T(imax,jmax) Alors
imax i;
jmax j;
finSi
finpour
finpour
Ecrire ("Le plus grand lment est ", T(iMax, jMax));
Ecrire ("Il se trouve aux indices ", iMax, "; ", jMax);
fin

Algorithme

Exercice 41

Prof.Fatima IBRAHIMI

Ecrire l'algorithme effectuant le dcalage des lments d'un


tableau.
Tableau initial
Tableau modifi (dcalage gauche)

Algorithme

Exercice 41
algorithme dcalage;
Var tmp: caractre;
Var i, n : entier;
Tableau T() : entier;
Dbut
Ecrire (" donnez la valeur n");
Lire(n);
Redim (T(n- 1));
tmp T(0);
Pour i de 0 n-2 Faire
T(i) T(i+1);
finpour
T(n - 1) tmp;
fin

Prof.Fatima IBRAHIMI

Algorithme

Exercice 42

Prof.Fatima IBRAHIMI

crire un algorithme triant un tableau par slection.


on cherche llment de plus petite valeur dans le tableau
le placer en tte du tableau
recommencer avec le tableau moins la premire case

Algorithme

Exercice 42
algorithme tri slection;
Var i, n, tmp : entier;
Tableau T() : entier;
dbut
pour i de 0 n - 2 faire
mi i;
pour j de i+1 n 1 faire
Si T(j) < T(mi) alors
tmp T(mi);
T(mi) T(j);
T(j) tmp;
finsi
finpour
finpour
fin

Prof.Fatima IBRAHIMI

Algorithme

Exercice 43

Prof.Fatima IBRAHIMI

crire un algorithme qui permet dinverser un tableau.


algorithme inversion tableau;
Var i, n, tmp : entier;
Tableau T() : entier;
dbut
Ecrire (" donner la valeur de n" );
Lire (n);
Redim (T(n-1));
pour i de 0 n/2 faire
tmp T(i);
T(i) T((n-1) - i);
T((n-1) - i) tmp;
finpour
fin

Algorithme

Exercice 44

Prof.Fatima IBRAHIMI

Ecrire lalgorithme permettant deffectuer la multiplication de


deux vecteurs de taille N connue lavance et dafficher le
rsultat.
Rappel : Soient V1 et V2 deux tableaux.

V1 * V2 = a*f + b*g + c*h + d*i + e*j

Algorithme

Exercice 44
algorithme produit vecteur;
Var i, n, res : entier;
Tableau V1(), V2() : entier;
dbut
Ecrire ( "donner la valeur n " );
Lire (n);
Redim (V1(n)); Redim (V2(n));
Res 0;
Pour i de 0 n-1 Faire
Res Res + V1(i) * V2(i);
Fin Pour
Ecrire ( " Le rsultat est ", Res);
fin

Prof.Fatima IBRAHIMI

Algorithme

Exercice 45

Prof.Fatima IBRAHIMI

Ecrire un algorithme qui insre un lment donn X la position


K d'un tableau.
algorithme insertion_elt_X;
Pour i de pos n 1 faire
tmp T(i);
Var i, n, elt, pos, tmp: entiers;
T(i) elt;
Tableau T (): entier;
elt tmp;
dbut
finpour
{lecture du tableau}
fin
n n + 1;
Ecrire ( " entrer llment ajouter " );
Lire (elt);
Ecrire ( " entrer sa position " );
Lire (pos);

Algorithme

Exercice 46

Prof.Fatima IBRAHIMI

Soit T un tableau rangs dans l'ordre croissant. Ecrire un


algorithme qui insre un lment donn X dans le tableau T
en respectant l'ordre croissant?

Algorithme

Exercice 46
algorithme insrer X;
Var i, j, n, elt, tmp : entiers;
Tableau T() : entier;
dbut
Ecrire("entrez la taille du tab:");
Lire(n);
Redim (T(n 1));
Pour i de 0 n 1 faire
Ecrire("entrez llment:", i+1);
Lire(T(0));
finpour
n n + 1;
Ecrire("entrez llment X:");
Lire(elt);

Prof.Fatima IBRAHIMI

T(n 1) elt;
Pour i dcroissant de n 1 1
faire
pour j de 1 i faire
si T(j 1) > T(j) alors
tmp T(j 1);
T(j 1) T(j);
T(i) tmp;
finsi
finpour
finpour
Pour i de 0 n 1 faire
Ecrire (T(i));
finpour
fin

Algorithme

Exercice 47

Prof.Fatima IBRAHIMI

Donner un algorithme pour supprimer un lment donn d'un


tableau d'entiers.
algorithme Suppression dun elt;
Var i , n, elt, Temp :Entiers ;
Tableau T() :Entier;
dbut
{Lecture et remplissage du tableau}
Ecrire("Entrez l'lment supprimer :");
pour i de pos n 1 faire
Lire(elt);
T(i) T(i + 1);
pour i de 0 n 1 faire
finpour
si elt = T(i) alors
pour i de 0 n 2 faire
Pos i;
Ecrire (T(i) );
finsi
finpour
finpour
fin

Algorithme

Exercice 48

Prof.Fatima IBRAHIMI

Soit T un tableau de N entiers. Ecrire lalgorithme qui dtermine le


plus grand lment de ce tableau.
algorithme Grand lment;
Var i , max, n : entier;
Tableau T () : entier ;
dbut
Ecrire("Entrez la taille du tab");
Lire (n);
Redim (T(n 1));
pour i de 0 n 1 faire
Ecrire ("Entrez llment:" ,i);
Lire (T(i) );
finpour

max T (0);
i 0;
Rpter
i i + 1;
si T (i) > max alors
Max T (i);
finsi
Jusqu i = (n 1)
Ecrire (" Le plus grand lment est
: ", max);
fin

Algorithme

Exercice 49
Soit

Prof.Fatima IBRAHIMI

Algorithme

Exercice 50

Prof.Fatima IBRAHIMI

Proposez un algorithme permettant de calculer la fois le


minimum et le maximum d'un tableau.

Algorithme CalculMaxMin;
Var i, j, n, min, max : Entier;
Tableau T() : rel;
dbut
max T(0);
min T(0);

pour i de 1 n 1 faire
si T(i) < min alors
min T(i);
sinon
si T(i) > max alors
max T(i);
finsi
finsi
finpour
Ecrire (" le max est : ", max, "le
min est :" , min);
fin

Algorithme

Exercice 51

Prof.Fatima IBRAHIMI

Soit T un tableau de N rels. Ecrire un algorithme qui permet de


calculer le nombre des occurrences dun nombre X (c'est--dire
combien de fois ce nombre X figure dans le tableau T).
algorithme NBR occurences;
Var i, n, X, cpt: entier;
Tableau T (): entier;
dbut
Ecrire ( "donner le nombre X " );
Lire (X);
cpt 0;
Pour i de 0 n-1 Faire
si T (i) =X alors
cpt cpt + 1;
finsi
finpour
Ecrire ( " Le nombre doccurrences est ", cpt);
fin

Algorithme

Exercice 52

Prof.Fatima IBRAHIMI

Ecrire un algorithme qui calcule le nombre d'entiers pairs et le


nombre
d'entiers
impairs
d'un
tableau
d'entiers.
algorithme compter nbr pairs et nbr impairs;
Var i, n, nbP, nbImp: entier;
Tableau T (): entier;
dbut
nbP 0;
nbImp 0;
Pour i de 0 n-1 Faire
si T(i) MOD 2 = 0 alors
nbP nbP + 1;
Sinon
nbImp nbImp + 1;
finsi
Ecrire ( " Le nombre dentiers pairs est ", nbP);
finpour
Ecrire ( " Le nombre dentiers impairs est ", nbImp);
fin

Algorithme

Exercice 53

Prof.Fatima IBRAHIMI

Soit un tableau T(n), crire un algorithme qui calcule VMEP


(valeur moyenne des lments positifs), VMEN (valeur
moyenne des lments ngatifs) et NEM (nombre d'lments
nuls).

Algorithme

Exercice 53

Prof.Fatima IBRAHIMI

Algorithme Calcul VM;


si t(i) > 0 Alors
Var i, n, nPos, nNeg, VmoyP,
nPos nPos + 1;
VmoyN, nNull : entier;
somP somP + T(i);
sinon
Var somP, somN : entiers;
nNeg nNeg + 1;
Tableau T ( ) : entier;
somN somN + T(i);
dbut
finsi
nPos 0; nNeg 0;
finsi
nNull 0;
finpour
somP 0; somN 0;
VmoyP somP/nPos;
pour i de 0 n 1 faire
VmoyN somN/nNeg:
si t(i) = 0 Alors
nNull nNull + 1;
sinon Ecrire( "Le nombre d'lments nuls est : " , nNull );
Ecrire("La valeur moyenne des lments positifs est: " , VmoyP);
Ecrire("La valeur moyenne des lments ngatifs est: " , VmoyN);
fin

Algorithme

Exercice 54

Prof.Fatima IBRAHIMI

Donner un algorithme qui prend en argument un tableau d'entiers


de taille n et qui le modifie de tels sorts que tous les entiers pairs
se retrouvent avant les entiers impairs.
Var i , n, j: Entiers
Tableau T (), Tres() :Entier
dbut
j 0
pour i de 0 n 1 faire
si T(i) MOD 2 = 0 alors
Tres ( j )T(i);
j j + 1;
finsi
finpour

pour i de 0 n 1 faire
si T(i) MOD 2 0 alors
Tres(j) T(i);
j j + 1;
finsi
finpour
pour i de 0 n 1 faire
Ecrire ( Tres(i));
finpour
fin

Algorithme

Exercice 54

Prof.Fatima IBRAHIMI

On dispose des notes de 25 lves ; chaque lve peut avoir une ou


plusieurs notes mais toujours au moins une. Ecrire un programme
permettant dobtenir la moyenne de chaque lve lorsquon lui
fournit les notes. On veut que les donnes et les rsultats se
prsentent ainsi :
-Les
parties
italiques
correspondent aux donnes
tapes par lutilisateur.
-La valeur -1 sert de critre
de fin de notes pour chaque
lve.

Vous aimerez peut-être aussi