Serie1 19 20
Serie1 19 20
Serie1 19 20
POO en C++
Série 1
Exercice 1
Ecrire un programme qui permet de donner la somme des arguments de la ligne de
commande qui sont supposés être des entiers, ou 0 si l’un des arguments n’est pas un
entier (Utiliser la fonction strtol de cstdlib)
Exercice 2
Réaliser un programme qui permet de calculer une expression arithmétique donnée sur la ligne de
commande, sous la forme :
x op y
où x et y sont des entiers et op est l’un des opérateurs +, −, *, /, %. Le programme doit
accepter toute expression valable (contenant des espaces ou non) et doit signaler toute expression
non conforme (plus d’un opérateur, valeur non entière, etc.)
Exercice 3
On considère la structure suivante :
#define NB_MAX 5
struct Etudiant{
int notes[NB_MAX];
int cne;
};
1. Ecrire une fonction nommée "initialise" qui permet d’initialiser les champs d’une structure
de type Etudiant.
2. Ecrire une fonction nommée "echange" qui permet d’échanger les contenus de deux structures
de type Etudiant.
3. Ecrire un programme qui permet de tester ces fonctions.
Exercice 4
On considère les déclarations suivantes :
int f(int); // fonction 1
int f(float); // fonction 2
void f(int,float); // fonction 3
void f(float,int); // fonction 4
int n,p;
float x,y;
char c;
double z;
1/3
Exercice 5
1. Ecrire une macro max qui permet de calculer le maximum de deux entiers, puis tester la valeur
de :
max(++a, b);
Exercice 6
On considère les déclarations suivantes :
#define DIM 10
typedef double T;
Exercice 7
1. Ecrire un programme qui permet de :
− créer un tableau dynamique d’un type donné T, dont la taille est fournie en donnée.
− saisir la valeur de ses éléments.
− afficher le tableau.
2. Ecrire les fonctions suivantes :
− initialiser qui alloue de l'espace mémoire pour le tableau et qui met à 0 ses éléments.
− saisir qui saisie les valeurs du tableau.
− afficher qui affiche le tableau.
Puis modifier le programme précédent en utilisant ces fonctions. Le programme ne doit pas
utiliser une variable globale pour le tableau.
3. Modifier le programme de telle sorte que les fonctions de manipulation du tableau et la fonction
main (pour le test) soient dans deux fichiers séparés.
2/3
Exercice 8
En utilisant les pointeurs sur les fonctions, écrire une fonction qui permet de calculer la valeur
approchée de la racine d'une fonction continue sur un intervalle avec la méthode de dichotomie.
Puis, utiliser cette fonction pour trouver :
− la racine f(x) = x3+2x-1 sur [0,1] à 10-9 près.
− une valeur approchée de PI à 10-10 près.
3/3