Vous êtes sur la page 1sur 2

Université de M’SILA Master 1 / S1 / 2016-2017

Faculté de Technologie Le 11 Mars 2017


Département d’électronique

Rattrapage en « Program Orientée Objet en C++» Durée 1h30

1. Quel est la bibliothèque qu'il faut ajoutée dans un programme pour pouvoir utiliser les instructions
cout et cin.
2. Pour tous les noms de variables suivants, choisissez ceux qui sont acceptés par le compilateur :
2eme_element int1 include delete var.2
3. Quelle est la différence entre les deux expressions :
Int x = &a ; et int &x = a ;
4. Citer les 3 modes de passage de paramètre dans une fonction.
5. Donner l’opération qui permet de détruire l’allocation dynamique « ptr=new int[100] ».
6. Citer les quatre principes fondamentaux du concept de la programmation orienté objet.
7. Quel est le type d'héritage en C++ qui permet tous les accès.
8. Qu’est-ce qu’une classe abstraite ?
9. Quelle est la ou les bonnes expressions qui permettent de créer un objet de type Point.
Point a[]; Point = a; Point a(0,0);
10. Utiliser un break dans un switch est optionnel (Vrai ou faux).

Exercice 1 :
Ecrire une fonction void compter(int n) affichant les premiers entiers par ligne de taille croissante.
Exemple d’exécution : compter(4) 1
12
123
1234

Exercice 2 :
Prenant la structure de test suivante
switch (n)
{ case 0 : cout << "A" << endl ;
case 1 :
case 3 : cout << "B" << endl ;
break ;
case 2 :
case 4 :
case 6 : cout << "C" << endl ;
default : cout << "D" << endl ;;
}
Que va afficher le programme dans le cas où l'utilisateur donne comme valeur de n les cas suivants :
1) 0
2) 1
3) 6
4) -1

Bonne chance
Université de M’SILA Master 1 / S1 / 2016-2017
Faculté de Technologie Le 11 Mars 2017
Département d’électronique

Corrigé type :

1. Iostream.h
2. Les noms de variables acceptés par le compilateur sont :
2eme_element Int1 include delete var.2
3. La différence entre les deux expressions est que l’opérateur & dans la première (Int x = &a) renvoi
l’adresse de a vers x, par contre la deuxième (int &x = a) définie une référence x sur a.
4. Passage par variable passage par référence passage par pointeur
5. delete[] ptr;
6. Les quatre principes fondamentaux du concept de la programmation orienté objet.
a. Classe et objet
b. Encapsulation
c. Héritage
d. Polymorphisme
7. Public
8. Une classe abstraite est une classe qu’on peut pas instancier, et qui contient une méthode virtuelle
pure.
9. Les expressions qui permettent de créer un objet de type Point sont :
Point a(0,0) ;
10. Vrai

Exercice 1 : (4 pts)
void compter(int n)
{
for (int j=1; j <= n; j++)
{
for (int i=1; i <= j; i++)
cout << i << " ";
cout << endl ;
}
}
Exercice 2 : (4 pts)
Le programme affiche les résultats suivants :
(1) (2) (4) (5)
n= 0 1 6 -1
A B C D
B D