Exercices
du cours :
Exercice 1 : Surface :
v Problème :
v Analyse :
►
Données :
ü Données
d’entrée : - R: le rayon de disque
ü Données de
sortie : - S : la surface de
disque
ü Données intermédiaires :
Pi : le nombre constant 3.14..
►
Actions :
o
Lire le rayon (R)
o
S= P*R*R
o
Afficher la surface (S)
v Conception :
Algorithme Surface ;
Variables
S,R :reel ;
Constantes
Pi= 3,141592 ;
Debut
Ecrire(‘Donner le rayon de disque ‘) ;
Lire(R) ;
S
ßPi*R*R ;
Ecrire(‘la
surface de ce disque est : ‘ , S) ;
Fin.
v Traduction en Pascal:
v Traduction en Pascal:
program Surface ;
uses crt;
Var
R,S :real ;
Const
Pi= 3.141592 ;
Begin
Write('Donner le rayon de disque:') ;
Read(R) ;
S := Pi*R*R ;
Write('La surface est : ' , s:3:2) ;
readkey;
End.
v Exemple d' exécution:
Exercice 2 : Equation :
v Problème : Ecrire un algorithme Equation qui permet de
résoudre les équations de la forme ax+b=0
(en supposant que la valeur de a est différente
de 0)
v Analyse :
►
Données :
ü Données
d’entrée :
a,b: les coefficients de l’équation
ü Données de
sortie :
X : la solution de l’équation
ü Données intermédiaires :__
►
Actions :
o
Lire les coefficients a et b
o
X=-b/a
o
Afficher la solution (x)
v Conception :
Algorithme equation1 ;
Variable
a,b,x :reel ;
debut
Ecrire(‘Donner
les coefficients de l’’équation a et b : ‘) ;
Lire(a,b) ;
X
ß -b/a ;
Ecrire(‘la
solution est ‘ , x) ;
Fin
v Traduction en Pascal:
v Traduction en Pascal:
program equation1 ;
Var
a,b,x :real ;
begin
write('Donner les
coefficients de l''équation a et b : ') ;
read(a,b) ;
X :=-b/a ;
writeln('la solution
est ' , x:3:2) ;
end.
v Exemple d' exécution:
Exercice 3 : Distance :
v Problème : Ecrire un algorithme Distance qui permet de calculer et afficher la distance entre deux points M et N
dont les coordonnées sont des entiers données. (Par rapport à un repère
gradué) M (a, b) et
N (c, d) , d(M, N) =racine((a-c)*(a-c)+(b-d)*(b-d))
v Analyse :
►
Données :
ü Données
d’entrée :
a,b : coordonnés de M
c,d : coordonnées de N
ü Données de
sortie :
Distance : la distance entre M et N
►
Actions :
o
Lire les coordonnées de M
o
Lire les coordonnées de N
o
Distance= racine((a-c)*(a-c)+(b-d)*(b-d))
o
Afficher la distance
v Conception:
Algorithme Distance ;
Variables :
a,
b ,c ,d , distance : reel ;
Debut
Ecrire(‘
donnez les cordonnées de M’) ;
Lire(a,
b) ;
Ecrire(‘
donnez les cordonnées de N’) ;
Lire(c,
d) ;
Distance
ßracine((a-c)*(a-c)+(b-d)*(b-d)) ;
Ecrire(‘la
distance entre M et N est : ‘, distance) ;
Fin.
v Traduction en Pascal:
v Traduction en Pascal:
Program distance ;
Uses crt ;
Var
a, b, c, d, ab
:real ;
begin
Writeln('Bienvenu
dans notre programme Distance') ;
write('donnez les
cordonnées de M :') ;
read( a,b) ;
write('donnez les
cordonnées de N:') ;
read( c,d) ;
ab := sqrt(
sqr(c-a) + sqr(d-b)) ; {sqrt(x)= racine(x), sqr(x)= x*x)}
writeln ('La
distance entre M et N est :' , ab:3:2) ;
writeln('Merci
d''avoir utiliser notre programme, a bientôt !'); {deux apostrophes permettent d’afficher un seul}
write('Appuyez sur
une touche pour quiter le programme') ;
readkey ;
end.
v Exemple d' exécution:
Exercice 4 : Rayon_disque:
v Problème : Écrire un algorithme Rayon_disque qui lit la surface
d’un disque et renvoi son rayon.
v Analyse :
►
Données :
ü Données
d’entrée : - S : la surface de disque
ü Données de
sortie : - R : le rayon de disque
ü Données intermédiaires :
- Pi : le nombre constant (3.14...)
►
Actions :
o
Lire la surface
o
R =racine(s/pi)
o Afficher le rayon
v Conception :
Algorithme Rayon_disque ;
Variables
S,R :reel ;
Constantes
Pi= 3,141592 ;
Debut
Ecrire(‘Donner
la surface de disque ‘) ;
Lire(S) ;
R
ßRacine(S/Pi) ;
Ecrire(‘le
rayon de ce disque est : ‘ , S) ;
Fin
Série
N° 1 :
Exercice 1
Quelles seront les valeurs des
variables A et B après exécution des instructions suivantes ?
Variable A, B : Entier ;
Début
A ← 1;
B ← A + 3;
A ← 3;
Fin
R :
A
|
B
|
|
A ← 1;
|
1
|
|
B ← A + 3;
|
1
|
4
|
A ← 3;
|
3
|
4
|
A la fin de l’exécution : A=3 et
B=4
Quelles seront les valeurs des
variables A et B après exécution des instructions suivantes ?
Variable A, B : Entier;
Début
A ← 5;
B ← A + 4;
A ← A + 1;
B ← A – 4;
Fin
R :
A
|
B
|
|
A ← 5
|
5
|
|
B ← A + 4
|
5
|
9
|
A ← A + 1
|
6
|
9
|
B ← A – 4
|
6
|
2
|
A la fin de l’exécution : A=6 et
B=2
Quelles seront les valeurs des
variables A, B et C après exécution des instructions suivantes ?
Variable A, B, C : Entier;
Début
A ← 3;
B ← 10;
C ← A + B;
B ← A + B;
A ← C;
Fin
R :
A
|
B
|
C
|
|
A ← 3
|
3
|
||
B ← 10
|
3
|
10
|
|
C ← A + B
|
3
|
10
|
13
|
B ← A + B
|
3
|
13
|
13
|
A ← C
|
13
|
13
|
13
|
A la fin de l’exécution : A=13 B=13
et C=13
1) Quelles seront les valeurs des
variables A et B après exécution des instructions suivantes ?
Variable A, B : Entier;
Début
A ← 5;
B ← 2;
A ← B;
B ← A;
Fin
2)
les deux dernières instructions permettent-elles d’échanger les deux
valeurs de B et A ?
3) Si l’on inverse les deux dernières
instructions, cela change-t-il quelque chose ?
4) Proposer un algorithme qui permet
d’échanger le contenu de deux variables.
R :
1)
A
|
B
|
|
A ← 5
|
5
|
|
B ← 2
|
5
|
2
|
A ← B
|
2
|
2
|
B ← A
|
2
|
2
|
A la fin de l’exécution : A= B=2
2) Non, la valeur initiale de A est
perdu.
3) Oui, dans ce cas la valeur de B
sera écrasé.
4) Variable A, B,C : Entier;
Début
A ← 5;
B ← 2;
C ← B;
B ← A;
A← C;
Fin
Quel résultat produit l’algorithme
suivant :
Variables val, double : réel ;
Début
Val ← 231 ;
Double ← Val * 2 ;
Ecrire (Val) ;
Ecrire (Double) ;
Fin
Résultat de l’execution :
231
462
Exercice 7 (+video askka inchaallah)
Ecrire un algorithme qui demande un
nombre à l’utilisateur, puis qui calcule et
affiche le carré de ce nombre.
v Analyse :
►
Données :
ü Données
d’entrés :
N: un nombre reel
ü Données de
sortie : C : le carré du nombre
►
Actions :
o
Lire le nmbre N
o
C=N*N
o
Afficher C
v Conception :
...
Exercice 8
Ecrire un algorithme qui lit le prix
d’un produit et la quantité achetée de ce produit, et qui fournit le prix total
correspondant.
Exercice 9 : Ecrire un algorithme qui lit le nom
et l’âge d’une personne et affiche par la suite ce message suivant : Bonjour
Nom votre âge est Age.
Exemple : Bonjour Ahmed votre âge est 17 ans
Série
N° 2 :
Exercice 1
Écrire un
algorithme qui demande deux nombres à l’utilisateur et l’informe ensuite si
leur produit est négatif ou positif.
v Conception :
Algorthme signeproduit ;
Variable
A,B :reel ;
Debut
Ecrire(‘Donnez
deux nombre’) ;
Lire(a,b) ;
Si
(a*b)<0 alors
Ecrire(‘le
produit de ces nombre est
négatif ‘) ;
Sinon
Ecrire(‘le
produit de ces nombre est
positif ‘) ;
Finsi
fin
Exercice 2
Écrire un algorithme Est_Pair
qui retourne si un nombre entier est paire ou impaire
v Conception :
Algorithme Est_Pair ;
Variable
N :Entier ;
Debut
Lire(N) ;
Si (N mod 2) =0 alors
Ecrire(‘c’’est
un nombre paire ‘) ;
Sinon
Ecrire(‘c’’est
un nombre impaire ‘) ;
Finsi
fin
Exercice 3
Écrire un
algorithme qui demande trois noms à l’utilisateur et l’informe ensuite s’ils
sont rangés ou non dans l’ordre alphabétique.
Algorithme Est_Pair ;
Variable
N1,N2,N3 :Chaine ;
Debut
Lire(N1) ;
Lire(N2) ;
Lire(N3) ;
Si (N1<N2) ET (N2<N3) alors
Ecrire(‘Ordonnés ‘) ;
Sinon
Ecrire(‘pas
ordonnés ‘) ;
Finsi
fin
Exercice 4
Écrire un
algorithme qui va résoudre une équation de 2eme degré ( ax²+bx+c=0)
v Analyse :
►
Données :
ü Données
d’entrés :
a,b,c: coefficients
ü Données de
sortie : x1,x2 : solutions
ü Données
intermédiaires : D : Discriminant
►
Actions :
o
Lire les coefficients a ,b et c
o
Si a=0 c’est une équation de premier degré
o
Sinon
§ D=-b-4*a*c
§ Si D>0
·
X1=
·
X2=
·
Afficher les solutions
§ Si D=0
·
X1=
·
Afficher la solution
§ Si D<0
·
Afficher « Pas de solution »
v Conception :
Algorithme
equation1 ;
Variable
a,b,c,x1,x2,D :reel ;
debut
Ecrire(‘Donner les coefficients de
l’’équation a ,b et c : ‘) ;
Lire(a,b,c) ;
Si a=0 alors
Ecrire(‘c’’est
une équation de premier degré ‘ ) ;
Sinon
D ßb*b-4*a*c ;
Si D>0 alors
X1ß(-b-racine(D))/(2*a) ;
X1ß(-b+racine(D))/(2*a) ;
Ecrire(‘les
solutions sont :’,X1, ‘ ET ‘,X2) ;
Sinon
Si D=0 alors
X1ß(-b-racine(D))/(2*a) ;
Ecrire(‘la solution est :’,X1) ;
sinon
Ecrire (‘l’’équation n’’a pas de
solution’) ;
Finsi
Finsi
finsi
Fin
v Traduction en
Pascal :
program equation2;
uses crt;
var
a,b,c,x1,x2,d:real;
begin
write('donne a et b et c');
read(a,b,c);
if a =0then
write('c"est une equation de premier degri')
else
begin
D:=b*b-4*a*c;
if d>0then
begin
x1:=(-b+sqrt(d))/(2*a);
x2:=(-b-sqrt(d))/(2*a);
write('les solutions sont');
write(x1:3:2,'et',x2:3:2);
end
else
if d=0 then
begin
x1:=-b/(2*a);
write('la solution est',x1:3:2);
end
else
write('l"equation n"a pas de
solution');
end;
readkey
End.
Exercice 5
Écrire un
algorithme qui demande l’âge d’un enfant à l’utilisateur. Ensuite, il l’informe
de sa catégorie :
"Poussin"
de 6 à 7 ans
"Pupille"
de 8 à 9 ans
"Minime"
de 10 à 11 ans
"Cadet"
après 12 ans
Peut-on concevoir
plusieurs algorithmes équivalents menant à ce résultat ?
Exercice 6
Code TVA
(CTVA)
|
TVA
|
1
2
3
4
5
|
0.123
0.165
0.167
0.155
0.50
|
1)
Écrire un algorithme Facture1 qui
calcule et affiche le prix toute taxe comprise (PTTC) d'un article, à partir du
prix total hors taxe (PTHT) et de taxe sur valeur ajoutée (TVA) en utilisant la
formule suivante : PTTC= PTHT + PTHT x TVA.
2)
Écrire un algorithme Facture2 qui
calcule et affiche le prix toute taxe comprise (PTTC) d'un article, à partir du
prix total hors taxe (PTHT) et selon le code TVA (CTVA).
Aucun commentaire:
Enregistrer un commentaire