Vous êtes sur la page 1sur 2

Université Ferhat Abbes Sétif 1 Licence Automatique L3/Année: 2020/2021

Faculté de Technologie/Département d’électrotechnique Module: Programmation en C++

Examen de premier semestre (Corrigé type)


1) Soit un programme qui possède les variables suivantes E) x = 9 9 ;
i f ( x++ < 1 0 0 )
int a , b = 2;
c o u t << ” I t i s t r u e ! \ n ” ;
float c = 4.2;
else
et l’instruction suivante c o u t << ” I t i s f a l s e ! \ n ” ;

a = b ∗ c; . . . . . . It is true ! . . . . . .
4) Remplacez les if/else suivantes par des expressions
Quelle est la valeur de a ? (Cochez la bonne réponse) conditionnelles. ( Utilisez l’opérateur ? :) (0.75*3 pts)
(0.75 pts).
A) i f ( temp > 4 5 )
A) 8.4
population = base ∗ 10;
B) 8 X else
C) 0 population = base ∗ 2 ;
D) Aucune des réponses A, B ou C. population= temp > 45 ? base ∗ 10 : base ∗ 2 ;
2) Soit un programme qui possède les variables suivantes : B) i f ( h o u r s > 4 0 )
wages ∗= 1 . 5 ;
int a = 5 , b = 12;
else
double x = 3 . 4 , z = 9 . 1 ;
wages ∗= 1 ;
Quelles sont les valeurs des expressions suivantes ? wages ∗ = hours > 40 ? 1.5 : 1 ;
(0.75*4 pts)
C) i f ( r e s u l t >= 0 )
A) b / a c o u t << ” P o s i t i v e r e s u l t . \ n ” ;
else
......2 ......
c o u t << ” N e g a t i v e r e s u l t . \ n ” ;
B) x ∗ a
c o u t << ( r e s u l t >= 0 ? ” P o s i t i v e
. . . . . . 17 . . . . . . r e s u l t . \ n” : ” N e g a t i v e r e s u l t . \ n” ) ;

C) s t a t i c c a s t <double >(b / a ) 5) Conversion d’une boucle à une autre.


A) Convertissez while à do–while.(1 pts)
......2 ......
int x = 1;
D) b / s t a t i c c a s t <i n t >(x ) while ( x > 0)
{
......4 ......
c o u t << ” e n t e r a number : ” ;
3) Qu’affiche les codes suivants ? (0.75*5 pts) c i n >> x ;
}
A) x = 2 ; y = x++;
c o u t << x << ” ” << y ; ...................................................
int x = 1;
......3 2......
do
B) x = 2 ; y = ++x ; {
c o u t << x << ” , ” << y ; c o u t << ” e n t e r a number : ” ;
c i n >> x ;
. . . . . . 3,3 . . . . . . }
while (x > 0 ) ;
C) x = 2 ; y = 4 ;
c o u t << x++ << ”\n” << −−y ; ...................................................
......2...... B) Convertissez for à while. (1 pts)
......3...... f o r ( i n t count = 0 ; count < 5 0 ; count++)
{
D) x = 2 ; y = 2 ∗ x++; cout<< ” count i s ” << count << e n d l ;
c o u t << x << ”\ t ” << y ; }
......3...4... ...................................................

1
Université Ferhat Abbes Sétif 1 Licence Automatique L3/Année: 2020/2021
Faculté de Technologie/Département d’électrotechnique Module: Programmation en C++

i n t count =0; cout <<”Ent rez v o t r e moyenne éé g n r a l e : ” ;


w h i l e ( count < 5 0 ) c i n >>moyenne ;
{
cout<< ” count i s ” << count << e n d l ; i f ( moyenne >20)
count++; cout <<”E r r o r : n o t e i n v a l i d e \n ” ;
} e l s e i f ( moyenne > 1 5 )
cout <<”Vous ê t e s de c l a s s e A”<<e n d l ;
...................................................
e l s e i f ( moyenne >= 1 4 )
6) Qu’affiche le segment du programme suivant ? (1.5 pts) cout <<”Vous ê t e s de c l a s s e B”<<e n d l ;
i n t x = 40 , y = 50 , z = 60; e l s e i f ( moyenne >= 1 2 )
int ∗ ptr = nullptr ; cout <<”Vous ê t e s de c l a s s e C”<<e n d l ;
c o u t <<x<< ” ” <<y<< ” ” <<z<< e n d l ; e l s e i f ( moyenne >= 1 0 )
p t r = &x ; ∗ p t r ∗= 1 0 ; cout <<”Vous ê t e s de c l a s s e D”<<e n d l ;
p t r = &y ; ∗ p t r ∗= 5 ; e l s e i f ( moyenne >= 0 )
p t r = &z ; ∗ p t r ∗= 2 ; cout <<”Vous ê t e s de c l a s s e F”<<e n d l ;
c o u t <<x<< ” ” <<y<< ” ” <<z<< e n d l ; else
cout <<”E r r o r : n o t e i n v a l i d e \n ” ;
. . . . . . 40 50 60 . . . . . .
. . . . . . 400 250 120 . . . . . . return 0;
7) Réécrire la boucle suivante afin qu’elle utilise la notation }
par pointeur au lieu de celle en indice. (1 pts)
f o r ( i n t x = 0 ; x < 1 0 0 ; x++) 9) Structures répétitives : Soit le motif suivant
c o u t << a r r [ x ] << e n d l ; +
++
....................................................... +++
f o r ( i n t x = 0 ; x < 1 0 0 ; x++) ++++
c o u t << ∗ ( a r r + x ) << e n d l ; +++++
++++++
....................................................... +++++++
8) Structures conditionnelles : On veut utiliser un ++++++++
nouveau système de classification des étudiants de +++++++++
cycle Licence-Master en se basant sur leurs moyennes ++++++++++
générales comme indiqué dans le tableau suivant.
Compléter le programme C++ suivant afin qu’il affiche
Moyenne Classe le motif en ci-dessus. (2.5 pts)
15 et plus A
[14, 15[ B #i n c l u d e <i o s t r e a m >
[12, 14[ C u s i n g namespace s t d ;
[10, 12[ D
Moins de 10 F i n t main ( )
{
Compléter le programme suivant, qui vous permet d’en-
trer la moyenne générale d’un étudiant et de recevoir un
f o r ( i n t row =1; row <=10; row++)
message indiquant la classe de cet étudiant. (3.25 pts)
{
f o r ( i n t column =1; column<=row ; column++)
#i n c l u d e <i o s t r e a m > c o u t << ”+”;
u s i n g namespace s t d ; c o u t << e n d l ;
}
i n t main ( )
{ return 0;
d o u b l e moyenne ; }

Vous aimerez peut-être aussi