Td corrigé Exercice 1 - UQAC pdf

Exercice 1 - UQAC

Exercice 2 : Écrire un programme C++ qui lit un mot de quatre lettres, puis ... dans chacun des énoncés suivants et expliquer comment corriger la situation :.




part of the document



Série 2 : exercices sur le langage C++


Exercice 1 Soit les déclarations suivantes :

char Nom[20];
int Age;
char Choix;
float Poids;

Déterminer le contenu de la variable servant à la lecture pour chacune des trois entrées proposées. est le retour à la ligne (carriage return).
cin >> Nom;
Jean Charles Bernard
2001
Marc Aurèle Fortin Simard
cin >> Age;
12
12 14
a2
cin >> Poids;
105
10 102.02
103.15
cin >> Nom >> Age;
Nathalie 25
Jean Sébastine 37
Marie Curie 53
cin >> Choix >> Age >> Poids >> Nom;
1 23 50.5 Bin Mich
s 12 45 Alfredo
b 231 –4 Oméga

Exercice 2 : Écrire un programme C++ qui lit un mot de quatre lettres, puis l’écrit à l’envers.

Exercice 3 Le fichier NOTE.DAT contient les notes d’un étudiant. La ligne compte 5 informations : le nom et le prénom de l’étudiant (max 20 caractères), sa note au test 1 sur 20 (pondération 25%), sa note au test 2 sur 20 (pondération 25%) et sa note à l’examen final sur 20 (pondération 50%). Écrire un programme C++ qui demande à l’usager le nom d’un fichier de résultat et qui écrira dans celui-ci le nom, le prénom de l’étudiant ainsi que sa moyenne sur 20.
Exemple de fichier NOTE.DAT
Léo Leblanc 14.7 15.6 14.9

Le fichier résultat (c’est l’usager qui fournit le nom) aura la forme suivante :

Léo Leblanc 15.1

Exercice 4 : Écrivez une classe vecteur (de type class et non struct) comportant :
en membres donnée privés : trois composantes de type double
en fonctions membre publiques :
initialise pour attribuer des valeurs aux composantes
homothétie pour multiplier les composantes par une valeur fournie en argument
affiche pour afficher les composantes du vecteur

Testez votre classe.

Exercice 5 : Remplacez la fonction membre initialise de l’exercice 1 par un constructeur qui par défaut initialise toutes les composantes à 0 et ajouter un membre donnée statique qui permettra de compter le nombre d’objets crées. Testez.

Exercice 6 : En considérant la classe vecteur de l’exercice 1, introduisez l’opérateur ==, tel que si v1 et v2 sont deux vecteurs, v1 == v2 fournisse la valeur 1 lorsque v1 et v2 ont les mêmes coordonnées et la valeur 0 dans le cas contraire. On prévoira les deux situations :
fonction membre
fonction amie

Exercice 7 : En considérant toujours la classe vecteur, programmez la surcharge des opérateurs >. Les "canevas" de ces fonctions sont :

friend ostream & operator …
return entree;
}
Exo.8: Quelle est l’erreur dans la déclaration suivante : int & r = 44;

Exo. 9 : Écrire un programme d’impression du triangle de Pascal suivant :

1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 15 15 6 1

Exo 10. Trouver l’(ou les) erreur(s) dans chacun des énoncés suivants  et expliquer comment corriger la situation :

supposons que le prototype suivant soit déclaré dans la classe Temps

void ~Temps( int );

L’énoncé suivant constitue une définition partielle de la classe Temps

Class Temps {
Public :

// prototypes de fonctions

private :

int heure = 0;
int minute = 0;
int heure = 0;
};

Supposez que le protoype suivant soit déclaré dans la classe Employe

Int Employe (const char *, const char * )

Exo 11 : Trouver l’(ou les) erreur(s) dans chacune des instructions suivantes et exppliquez comment la (les) corriger

classe exemple {
exemple (int y = 10) {donnes = y}
int lecturedonnesincementee (const {return ++donnee;}
static int lecturecompte( )
{
cout