SlideShare une entreprise Scribd logo
1  sur  6
Télécharger pour lire hors ligne
Introduction au langage C++
Travaux pratiques
Youssouf EL ALLIOUI
yelallioui@uhp.ac.ma
Notions de base
Exercice 1.
Ecrire un programme qui demande à l'utilisateur de taper la largeur et la longueur d'un champ
et qui en affiche le périmètre et la surface.
#include<iostream>
using namespace std;
int main()
{
double largeur,longueur,surface, perimetre;
cout << "Tapez la largeur du champ : "; cin >> largeur;
cout << "Tapez la longueur du champ : "; cin >> longueur;
surface = largeur * longueur;
perimetre = 2 * (largeur + longueur);
cout << "La surface vaut : " << surface << endl;
cout << "Le perimetre vaut : " << perimetre << endl;
cout << "Appuyez sur une touche pour continuer." << endl;
cin.ignore();
cin.get();
return EXIT_SUCCESS;
}
2016
1 | 6
Exercice 2.
Ecrire un programme qui demande à l'utilisateur de taper 5 entiers et qui affiche leur moyenne.
Le programme ne devra utiliser que 2 variables.
Exercice 3.
Ecrire un programme qui demande à l’utilisateur de saisir 2 entiers A et B, qui échange le
contenu des variables A et B puis qui affiche A et B.
Exercice 4.
Ecrire un programme qui demande à l'utilisateur de taper le prix HT d'un kilo de tomates, le
nombre de kilos de tomates achetés, le taux de TVA (Exemple 10%,20%,...). Le programme
affiche alors le prix TTC des marchandises.
Structures de contrôles
Exercice 5.
Ecrire un programme qui demande à l'utilisateur de taper un entier et qui affiche GAGNE si
l'entier est entre 56 et 78 bornes incluses PERDU sinon.
Exercice 6.
Ecrire un programme qui demande à l’utilisateur de taper 10 entiers et qui affiche leur somme.
Exercice 7.
Ecrire un programme qui demande à l’utilisateur de taper 10 entiers et qui affiche le plus petit
de ces entiers.
Exercice 8.
Ecrire un programme qui demande à l'utilisateur de taper un entier N et qui calcule u(N) défini
par :
u(0)=3
u(n+1)=3.u(n)+4
Exercice 9.
Ecrire un programme qui demande à l'utilisateur de taper un entier N et qui calcule u(N) défini
par :
u(0)=1
u(1)=1
u(n+1)=u(n)+u(n-1)
Exercice 10.
Ecrire un programme qui permet de faire des opérations sur un entier (valeur initiale à 0). Le
programme affiche la valeur de l'entier puis affiche le menu suivant :
2 | 6
1. Ajouter 1
2. Multiplier par 2
3. Soustraire 4
4. Quitter
Le programme demande alors de taper un entier entre 1 et 4. Si l'utilisateur tape une valeur
entre 1 et 3, on effectue l'opération, on affiche la nouvelle valeur de l'entier puis on réaffiche
le menu et ainsi de suite jusqu'à ce qu'on tape 4. Lorsqu'on tape 4, le programme se termine.
Exercice 11.
Ecrire un programme qui demande à l'utilisateur de taper des entiers strictement positifs et qui
affiche leur moyenne. Lorsqu'on tape une valeur négative, le programme affiche ERREUR et
demande de retaper une valeur. Lorsqu'on tape 0, cela signifie que le dernier entier a été tapé.
On affiche alors la moyenne. Si le nombre d'entiers tapés est égal à 0, on affiche PAS DE
MOYENNE.
Exercice 12.
Ecrire un programme qui demande de saisir un entier N et qui affiche N!.
Exercice 13.
Ecrire un programme qui demande à l'utilisateur de saisir un entier N et qui affiche la figure
suivante.
N=1
*
N=2
* *
*
N=3
* * *
* *
*
Exercice 14.
Ecrire un programme qui demande à l'utilisateur de saisir un entier N et qui affiche la figure
suivante.
N=1
*
N=2
* *
*
N=3
* * *
* *
3 | 6
*
et ainsi de suite.
Les tableaux
Exercice 15.
Écrire un programme qui demande à l'utilisateur de saisir 10 entiers stockés dans un tableau.
Le programme doit afficher le nombre d'entiers supérieurs ou égaux à 10.
Exercice 16.
Ecrire un programme qui demande à l'utilisateur de saisir 10 entiers stockés dans un tableau
ainsi qu'un entier V. Le programme doit rechercher si V se trouve dans le tableau et afficher
"V se trouve dans le tableau" ou "V ne se trouve pas dans le tableau".
Exercice 17.
Ecrire un programme qui demande à l'utilisateur de saisir 10 entiers stockés dans un tableau.
Le programme doit ensuite afficher l'indice du plus grand élément.
Exercice 18.
Ecrire un programme qui demande à l'utilisateur de saisir 10 entiers stockés dans un tableau
ainsi qu'un entier V. Le programme doit rechercher si V se trouve dans le tableau et doit
supprimer la première occurrence de V en décalant d'une case vers la gauche les éléments
suivants et en rajoutant un 0 à la fin du tableau. Le programme doit ensuite afficher le tableau
final.
Exercice 19.
Ecrire un programme qui demande à l’utilisateur de taper 10 entiers qui seront stockés dans un
tableau. Le programme doit trier le tableau par ordre croissant et doit afficher le tableau.
Algorithme suggéré :
 On cherche l'indice du plus petit élément parmi les indices de 0 à 9 et on échange cet
élément avec t[0].
 On cherche l'indice du plus petit élément parmi les indices de 1 à 9 et on échange cet
élément avec t[1].
 On cherche l'indice du plus petit élément parmi les indices de 2 à 9 et on échange cet
élément avec t[2].
 ...
 On cherche l'indice du plus petit élément parmi les indices de 8 à 9 et on échange cet
élément avec t[8].
Exercice 20.
4 | 6
Ecrire un programme qui demande à l’utilisateur de taper 10 entiers qui seront stockés dans un
tableau. Le programme doit trier le tableau par ordre croissant et doit afficher le tableau.
Algorithme suggéré (tri bulle) :
 On parcourt le tableau en comparant t[0] et t[1] et en échangeant ces éléments s'ils ne
sont pas dans le bon ordre.
 on recommence le processus en comparant t[1] et t[2],
 … et ainsi de suite jusqu'à t[8] et t[9].
 On compte lors de ce parcours le nombre d'échanges effectués.
 On fait autant de parcours que nécessaire jusqu'à ce que le nombre d'échanges soit nul :
le tableau sera alors trié.
Ecrire un programme qui saisit 2 tableaux de 10 entiers a et b. c est un tableau de 20 entiers. Le
programme doit mettre dans c la fusion des tableaux a et b. On copiera dans les 10 premières
cases de c le tableau a, dans les dix dernières le tableau b. Le programme affiche ensuite le
tableau c.
Exercice 21.
Ecrire un programme qui gère une liste d'entiers grâce au menu suivant :
1. Ajouter un entier
2. Afficher la liste des entiers
3. Supprimer dernier entier de la liste.
4. Afficher la dernière note tapée
5. Quitter
Il y aura au maximum 10 entiers. Lorsqu'on rajoute un entier, il sera rajouté à la fin de la liste.
Exercice 22.
Ecrire un programme qui gère une liste d'entiers grâce au menu suivant :
1 - Ajouter un entier
2 - Afficher la liste des entiers
3 - Supprimer le premier entier ayant une valeur donnée.
4 - Supprimer tous les entiers ayant une valeur donnée
5 - Quitter
Il y aura au maximum 10 entiers. La liste devra être en permanence triée : lorsqu’on rajoute un
entier, il sera inséré au bon endroit dans la liste pour que celle-ci reste triée.
Les fonctions
Exercice 23.
Ecrire une fonction distance ayant comme paramètres 4 doubles (xa, ya) et (xb, yb) qui
représentent les coordonnées de deux points A et B et qui renvoie la distance AB. Tester cette
fonction.
Exercice 24.
Ecrire une fonction f ayant en paramètre un entier et qui renvoie par un return un booléen : true
si l'entier est premier false sinon. Tester cette fonction.
5 | 6
Exercice 25.
Ecrire une fonction f ayant comme paramètre un entier n et qui renvoie le nième nombre premier :
cette fonction utilisera la fonction du 3). Tester cette fonction.
Exercice 26.
Ecrire une fonction swap ayant en paramètres 2 entiers a et b et qui échange les contenus de a et
de b. Tester cette fonction.
Exercice 27.
Ecrire une fonction f ayant en paramètres un tableau t de taille quelconque et un entier n
indiquant la taille du tableau. f doit renvoyer par un return un entier égal à l'indice de la première
case du tableau (parmi les n premières) comprise entre 0 et 10. S'il n'existe pas de telle valeur,
la fonction renvoie -1. Tester cette fonction.
Exercice 28.
Réalisez un programme C++ permettant de calculer les solutions de l'équation
(E) : 𝒂𝒙 𝟐
+ 𝒃𝒙 + 𝒄 = 𝟎 a, b et c sont des réels
On prendra garde à bien tester tous les cas possibles :
 a est nul, et l'équation est en fait une équation du premier degré. Exemple : 4x-2=0 donne
une unique solution x=0.5.
 le discriminant Δ=(b²- 4ac) est nul, et il n'y a qu'une seule solution, appelée racine
double, au problème. Exemple : 2x²+4x+2=0 donne x=-1.
 le discriminant Δ est positif, et deux solutions existent : x1=(-b-Δ1/2
)/2a et x2=(-
b+Δ1/2
)/2a. Exemple : 2x²+x-6=0 donne x1=1.5 et x2=-2.
 le discriminant est négatif, et il n'existe pas de solutions (réelles) au problème.
NB : Afin d'utiliser la fonction prédéfinie racine carrée sqrt() de la bibliothèque C, vous
prendrez garde à bien rajouter #include <cmath> en tête de votre programme.

Contenu connexe

Tendances

Exercices sur-python-turtle-corrige
Exercices sur-python-turtle-corrigeExercices sur-python-turtle-corrige
Exercices sur-python-turtle-corrigeWajihBaghdadi1
 
Cours langage c
Cours langage cCours langage c
Cours langage ccoursuniv
 
resume algo 2023.pdf
resume algo 2023.pdfresume algo 2023.pdf
resume algo 2023.pdfsalah fenni
 
Travaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de donnéesTravaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de donnéesInes Ouaz
 
Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2Faycel Chaoua
 
Série sous programmes (bac scientifique)
Série sous programmes (bac scientifique)Série sous programmes (bac scientifique)
Série sous programmes (bac scientifique)Hichem Kemali
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Ines Ouaz
 
Algorithme & structures de données Chap II
Algorithme & structures de données Chap IIAlgorithme & structures de données Chap II
Algorithme & structures de données Chap IIInes Ouaz
 
Examen principal + Correction ASD
Examen principal + Correction ASDExamen principal + Correction ASD
Examen principal + Correction ASDInes Ouaz
 
Cours de programmation en c
Cours de programmation en cCours de programmation en c
Cours de programmation en cbenouini rachid
 
Algorithmes d'approximation
Algorithmes d'approximationAlgorithmes d'approximation
Algorithmes d'approximationmohamed_SAYARI
 
Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siNarûtö Bàl'Sèm
 
La gestion des exceptions avec Java
La gestion des exceptions avec JavaLa gestion des exceptions avec Java
La gestion des exceptions avec JavaPapa Cheikh Cisse
 
Chapitre 2 complexité
Chapitre 2 complexitéChapitre 2 complexité
Chapitre 2 complexitéSana Aroussi
 
Cours algorithme: structures répétitives
Cours algorithme: structures répétitivesCours algorithme: structures répétitives
Cours algorithme: structures répétitivesInforMatica34
 

Tendances (20)

Exercices sur-python-turtle-corrige
Exercices sur-python-turtle-corrigeExercices sur-python-turtle-corrige
Exercices sur-python-turtle-corrige
 
Cours langage c
Cours langage cCours langage c
Cours langage c
 
resume algo 2023.pdf
resume algo 2023.pdfresume algo 2023.pdf
resume algo 2023.pdf
 
02 correction-td smi-s3-algo2
02 correction-td smi-s3-algo202 correction-td smi-s3-algo2
02 correction-td smi-s3-algo2
 
Travaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de donnéesTravaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de données
 
Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2
 
Serie
SerieSerie
Serie
 
Exercices algo
Exercices algoExercices algo
Exercices algo
 
Série sous programmes (bac scientifique)
Série sous programmes (bac scientifique)Série sous programmes (bac scientifique)
Série sous programmes (bac scientifique)
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)
 
Algorithme & structures de données Chap II
Algorithme & structures de données Chap IIAlgorithme & structures de données Chap II
Algorithme & structures de données Chap II
 
Examen principal + Correction ASD
Examen principal + Correction ASDExamen principal + Correction ASD
Examen principal + Correction ASD
 
Cours de programmation en c
Cours de programmation en cCours de programmation en c
Cours de programmation en c
 
Algorithmes d'approximation
Algorithmes d'approximationAlgorithmes d'approximation
Algorithmes d'approximation
 
Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 si
 
Serie2
Serie2Serie2
Serie2
 
La gestion des exceptions avec Java
La gestion des exceptions avec JavaLa gestion des exceptions avec Java
La gestion des exceptions avec Java
 
Introduction à Python
Introduction à PythonIntroduction à Python
Introduction à Python
 
Chapitre 2 complexité
Chapitre 2 complexitéChapitre 2 complexité
Chapitre 2 complexité
 
Cours algorithme: structures répétitives
Cours algorithme: structures répétitivesCours algorithme: structures répétitives
Cours algorithme: structures répétitives
 

Similaire à TP C++ : enoncé

eExercices corrigesdivers
eExercices corrigesdiverseExercices corrigesdivers
eExercices corrigesdiversHajar Yazine
 
Exercicescorrigesdivers
ExercicescorrigesdiversExercicescorrigesdivers
ExercicescorrigesdiversKarim Amane
 
Bac info 2000-2015 (Tunisie)
Bac info 2000-2015 (Tunisie)Bac info 2000-2015 (Tunisie)
Bac info 2000-2015 (Tunisie)salah fenni
 
exercices en C
exercices en Cexercices en C
exercices en Ccoursuniv
 
Exemples for1
Exemples for1Exemples for1
Exemples for1salmazen
 
Examen organigrame
Examen organigrameExamen organigrame
Examen organigramenabildekess
 
Examen organigrame
Examen organigrameExamen organigrame
Examen organigramenabildekess
 
Examen organigrame
Examen organigrameExamen organigrame
Examen organigramenabildekess
 
Fiche3 ex-sous-programme
Fiche3 ex-sous-programmeFiche3 ex-sous-programme
Fiche3 ex-sous-programmeBaghdadi Wajih
 
Cours Algorithmique (Echange de valeurs, Expressions, structure de choix et s...
Cours Algorithmique (Echange de valeurs, Expressions, structure de choix et s...Cours Algorithmique (Echange de valeurs, Expressions, structure de choix et s...
Cours Algorithmique (Echange de valeurs, Expressions, structure de choix et s...Fatima Zahra Fagroud
 
exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiquefast xp
 
Exemples for
Exemples forExemples for
Exemples forsalmazen
 
Exercices pascal fenni_2018
Exercices pascal fenni_2018Exercices pascal fenni_2018
Exercices pascal fenni_2018salah fenni
 
Ch5-les tableaux et les pointeurs.pdf
Ch5-les tableaux et les pointeurs.pdfCh5-les tableaux et les pointeurs.pdf
Ch5-les tableaux et les pointeurs.pdfFadouaBouafifSamoud
 
mis
mismis
misISIG
 

Similaire à TP C++ : enoncé (20)

eExercices corrigesdivers
eExercices corrigesdiverseExercices corrigesdivers
eExercices corrigesdivers
 
Exercicescorrigesdivers
ExercicescorrigesdiversExercicescorrigesdivers
Exercicescorrigesdivers
 
Bac info 2000-2015 (Tunisie)
Bac info 2000-2015 (Tunisie)Bac info 2000-2015 (Tunisie)
Bac info 2000-2015 (Tunisie)
 
C
CC
C
 
exercices en C
exercices en Cexercices en C
exercices en C
 
Cours d'algorithmique
Cours d'algorithmiqueCours d'algorithmique
Cours d'algorithmique
 
La série 3 en pascal
La série 3 en pascalLa série 3 en pascal
La série 3 en pascal
 
Exemples for1
Exemples for1Exemples for1
Exemples for1
 
Exo algo
Exo algoExo algo
Exo algo
 
Examen organigrame
Examen organigrameExamen organigrame
Examen organigrame
 
Examen organigrame
Examen organigrameExamen organigrame
Examen organigrame
 
Examen organigrame
Examen organigrameExamen organigrame
Examen organigrame
 
Fiche3 ex-sous-programme
Fiche3 ex-sous-programmeFiche3 ex-sous-programme
Fiche3 ex-sous-programme
 
Cours Algorithmique (Echange de valeurs, Expressions, structure de choix et s...
Cours Algorithmique (Echange de valeurs, Expressions, structure de choix et s...Cours Algorithmique (Echange de valeurs, Expressions, structure de choix et s...
Cours Algorithmique (Echange de valeurs, Expressions, structure de choix et s...
 
exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmique
 
Exemples for
Exemples forExemples for
Exemples for
 
Exercices pascal fenni_2018
Exercices pascal fenni_2018Exercices pascal fenni_2018
Exercices pascal fenni_2018
 
Ch5-les tableaux et les pointeurs.pdf
Ch5-les tableaux et les pointeurs.pdfCh5-les tableaux et les pointeurs.pdf
Ch5-les tableaux et les pointeurs.pdf
 
syntax-matlab.pdf
syntax-matlab.pdfsyntax-matlab.pdf
syntax-matlab.pdf
 
mis
mismis
mis
 

Dernier

Système National de Santé au- Maroc-(2017)."pdf"
Système National de Santé au- Maroc-(2017)."pdf"Système National de Santé au- Maroc-(2017)."pdf"
Système National de Santé au- Maroc-(2017)."pdf"tachakourtzineb
 
Quitter la nuit. pptx
Quitter        la             nuit.   pptxQuitter        la             nuit.   pptx
Quitter la nuit. pptxTxaruka
 
Comment enseigner la langue française en Colombie?
Comment enseigner la langue française en Colombie?Comment enseigner la langue française en Colombie?
Comment enseigner la langue française en Colombie?sashaflor182
 
Webinaire Technologia | DAX : nouvelles fonctions
Webinaire Technologia | DAX : nouvelles fonctionsWebinaire Technologia | DAX : nouvelles fonctions
Webinaire Technologia | DAX : nouvelles fonctionsTechnologia Formation
 
Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...
Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...
Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...Technologia Formation
 
Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...
Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...
Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...zidani2
 
PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024
PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024
PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024frizzole
 
Présentation sur les Risques Électriques et Leur Prévention en Algérie
Présentation sur les Risques Électriques et Leur Prévention en AlgériePrésentation sur les Risques Électriques et Leur Prévention en Algérie
Présentation sur les Risques Électriques et Leur Prévention en AlgérieSeifTech
 
EL KATRY Reem: Proposition de Programme Artistique et Exposition pour les Écoles
EL KATRY Reem: Proposition de Programme Artistique et Exposition pour les ÉcolesEL KATRY Reem: Proposition de Programme Artistique et Exposition pour les Écoles
EL KATRY Reem: Proposition de Programme Artistique et Exposition pour les ÉcolesSOLIANAEvelyne
 
Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...
Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...
Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...Pedago Lu
 
Gestion des flux de trésorerie dans les entreprises
Gestion des flux de trésorerie dans les entreprisesGestion des flux de trésorerie dans les entreprises
Gestion des flux de trésorerie dans les entreprisesHamdConseil
 

Dernier (11)

Système National de Santé au- Maroc-(2017)."pdf"
Système National de Santé au- Maroc-(2017)."pdf"Système National de Santé au- Maroc-(2017)."pdf"
Système National de Santé au- Maroc-(2017)."pdf"
 
Quitter la nuit. pptx
Quitter        la             nuit.   pptxQuitter        la             nuit.   pptx
Quitter la nuit. pptx
 
Comment enseigner la langue française en Colombie?
Comment enseigner la langue française en Colombie?Comment enseigner la langue française en Colombie?
Comment enseigner la langue française en Colombie?
 
Webinaire Technologia | DAX : nouvelles fonctions
Webinaire Technologia | DAX : nouvelles fonctionsWebinaire Technologia | DAX : nouvelles fonctions
Webinaire Technologia | DAX : nouvelles fonctions
 
Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...
Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...
Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...
 
Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...
Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...
Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...
 
PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024
PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024
PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024
 
Présentation sur les Risques Électriques et Leur Prévention en Algérie
Présentation sur les Risques Électriques et Leur Prévention en AlgériePrésentation sur les Risques Électriques et Leur Prévention en Algérie
Présentation sur les Risques Électriques et Leur Prévention en Algérie
 
EL KATRY Reem: Proposition de Programme Artistique et Exposition pour les Écoles
EL KATRY Reem: Proposition de Programme Artistique et Exposition pour les ÉcolesEL KATRY Reem: Proposition de Programme Artistique et Exposition pour les Écoles
EL KATRY Reem: Proposition de Programme Artistique et Exposition pour les Écoles
 
Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...
Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...
Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...
 
Gestion des flux de trésorerie dans les entreprises
Gestion des flux de trésorerie dans les entreprisesGestion des flux de trésorerie dans les entreprises
Gestion des flux de trésorerie dans les entreprises
 

TP C++ : enoncé

  • 1. Introduction au langage C++ Travaux pratiques Youssouf EL ALLIOUI yelallioui@uhp.ac.ma Notions de base Exercice 1. Ecrire un programme qui demande à l'utilisateur de taper la largeur et la longueur d'un champ et qui en affiche le périmètre et la surface. #include<iostream> using namespace std; int main() { double largeur,longueur,surface, perimetre; cout << "Tapez la largeur du champ : "; cin >> largeur; cout << "Tapez la longueur du champ : "; cin >> longueur; surface = largeur * longueur; perimetre = 2 * (largeur + longueur); cout << "La surface vaut : " << surface << endl; cout << "Le perimetre vaut : " << perimetre << endl; cout << "Appuyez sur une touche pour continuer." << endl; cin.ignore(); cin.get(); return EXIT_SUCCESS; } 2016
  • 2. 1 | 6 Exercice 2. Ecrire un programme qui demande à l'utilisateur de taper 5 entiers et qui affiche leur moyenne. Le programme ne devra utiliser que 2 variables. Exercice 3. Ecrire un programme qui demande à l’utilisateur de saisir 2 entiers A et B, qui échange le contenu des variables A et B puis qui affiche A et B. Exercice 4. Ecrire un programme qui demande à l'utilisateur de taper le prix HT d'un kilo de tomates, le nombre de kilos de tomates achetés, le taux de TVA (Exemple 10%,20%,...). Le programme affiche alors le prix TTC des marchandises. Structures de contrôles Exercice 5. Ecrire un programme qui demande à l'utilisateur de taper un entier et qui affiche GAGNE si l'entier est entre 56 et 78 bornes incluses PERDU sinon. Exercice 6. Ecrire un programme qui demande à l’utilisateur de taper 10 entiers et qui affiche leur somme. Exercice 7. Ecrire un programme qui demande à l’utilisateur de taper 10 entiers et qui affiche le plus petit de ces entiers. Exercice 8. Ecrire un programme qui demande à l'utilisateur de taper un entier N et qui calcule u(N) défini par : u(0)=3 u(n+1)=3.u(n)+4 Exercice 9. Ecrire un programme qui demande à l'utilisateur de taper un entier N et qui calcule u(N) défini par : u(0)=1 u(1)=1 u(n+1)=u(n)+u(n-1) Exercice 10. Ecrire un programme qui permet de faire des opérations sur un entier (valeur initiale à 0). Le programme affiche la valeur de l'entier puis affiche le menu suivant :
  • 3. 2 | 6 1. Ajouter 1 2. Multiplier par 2 3. Soustraire 4 4. Quitter Le programme demande alors de taper un entier entre 1 et 4. Si l'utilisateur tape une valeur entre 1 et 3, on effectue l'opération, on affiche la nouvelle valeur de l'entier puis on réaffiche le menu et ainsi de suite jusqu'à ce qu'on tape 4. Lorsqu'on tape 4, le programme se termine. Exercice 11. Ecrire un programme qui demande à l'utilisateur de taper des entiers strictement positifs et qui affiche leur moyenne. Lorsqu'on tape une valeur négative, le programme affiche ERREUR et demande de retaper une valeur. Lorsqu'on tape 0, cela signifie que le dernier entier a été tapé. On affiche alors la moyenne. Si le nombre d'entiers tapés est égal à 0, on affiche PAS DE MOYENNE. Exercice 12. Ecrire un programme qui demande de saisir un entier N et qui affiche N!. Exercice 13. Ecrire un programme qui demande à l'utilisateur de saisir un entier N et qui affiche la figure suivante. N=1 * N=2 * * * N=3 * * * * * * Exercice 14. Ecrire un programme qui demande à l'utilisateur de saisir un entier N et qui affiche la figure suivante. N=1 * N=2 * * * N=3 * * * * *
  • 4. 3 | 6 * et ainsi de suite. Les tableaux Exercice 15. Écrire un programme qui demande à l'utilisateur de saisir 10 entiers stockés dans un tableau. Le programme doit afficher le nombre d'entiers supérieurs ou égaux à 10. Exercice 16. Ecrire un programme qui demande à l'utilisateur de saisir 10 entiers stockés dans un tableau ainsi qu'un entier V. Le programme doit rechercher si V se trouve dans le tableau et afficher "V se trouve dans le tableau" ou "V ne se trouve pas dans le tableau". Exercice 17. Ecrire un programme qui demande à l'utilisateur de saisir 10 entiers stockés dans un tableau. Le programme doit ensuite afficher l'indice du plus grand élément. Exercice 18. Ecrire un programme qui demande à l'utilisateur de saisir 10 entiers stockés dans un tableau ainsi qu'un entier V. Le programme doit rechercher si V se trouve dans le tableau et doit supprimer la première occurrence de V en décalant d'une case vers la gauche les éléments suivants et en rajoutant un 0 à la fin du tableau. Le programme doit ensuite afficher le tableau final. Exercice 19. Ecrire un programme qui demande à l’utilisateur de taper 10 entiers qui seront stockés dans un tableau. Le programme doit trier le tableau par ordre croissant et doit afficher le tableau. Algorithme suggéré :  On cherche l'indice du plus petit élément parmi les indices de 0 à 9 et on échange cet élément avec t[0].  On cherche l'indice du plus petit élément parmi les indices de 1 à 9 et on échange cet élément avec t[1].  On cherche l'indice du plus petit élément parmi les indices de 2 à 9 et on échange cet élément avec t[2].  ...  On cherche l'indice du plus petit élément parmi les indices de 8 à 9 et on échange cet élément avec t[8]. Exercice 20.
  • 5. 4 | 6 Ecrire un programme qui demande à l’utilisateur de taper 10 entiers qui seront stockés dans un tableau. Le programme doit trier le tableau par ordre croissant et doit afficher le tableau. Algorithme suggéré (tri bulle) :  On parcourt le tableau en comparant t[0] et t[1] et en échangeant ces éléments s'ils ne sont pas dans le bon ordre.  on recommence le processus en comparant t[1] et t[2],  … et ainsi de suite jusqu'à t[8] et t[9].  On compte lors de ce parcours le nombre d'échanges effectués.  On fait autant de parcours que nécessaire jusqu'à ce que le nombre d'échanges soit nul : le tableau sera alors trié. Ecrire un programme qui saisit 2 tableaux de 10 entiers a et b. c est un tableau de 20 entiers. Le programme doit mettre dans c la fusion des tableaux a et b. On copiera dans les 10 premières cases de c le tableau a, dans les dix dernières le tableau b. Le programme affiche ensuite le tableau c. Exercice 21. Ecrire un programme qui gère une liste d'entiers grâce au menu suivant : 1. Ajouter un entier 2. Afficher la liste des entiers 3. Supprimer dernier entier de la liste. 4. Afficher la dernière note tapée 5. Quitter Il y aura au maximum 10 entiers. Lorsqu'on rajoute un entier, il sera rajouté à la fin de la liste. Exercice 22. Ecrire un programme qui gère une liste d'entiers grâce au menu suivant : 1 - Ajouter un entier 2 - Afficher la liste des entiers 3 - Supprimer le premier entier ayant une valeur donnée. 4 - Supprimer tous les entiers ayant une valeur donnée 5 - Quitter Il y aura au maximum 10 entiers. La liste devra être en permanence triée : lorsqu’on rajoute un entier, il sera inséré au bon endroit dans la liste pour que celle-ci reste triée. Les fonctions Exercice 23. Ecrire une fonction distance ayant comme paramètres 4 doubles (xa, ya) et (xb, yb) qui représentent les coordonnées de deux points A et B et qui renvoie la distance AB. Tester cette fonction. Exercice 24. Ecrire une fonction f ayant en paramètre un entier et qui renvoie par un return un booléen : true si l'entier est premier false sinon. Tester cette fonction.
  • 6. 5 | 6 Exercice 25. Ecrire une fonction f ayant comme paramètre un entier n et qui renvoie le nième nombre premier : cette fonction utilisera la fonction du 3). Tester cette fonction. Exercice 26. Ecrire une fonction swap ayant en paramètres 2 entiers a et b et qui échange les contenus de a et de b. Tester cette fonction. Exercice 27. Ecrire une fonction f ayant en paramètres un tableau t de taille quelconque et un entier n indiquant la taille du tableau. f doit renvoyer par un return un entier égal à l'indice de la première case du tableau (parmi les n premières) comprise entre 0 et 10. S'il n'existe pas de telle valeur, la fonction renvoie -1. Tester cette fonction. Exercice 28. Réalisez un programme C++ permettant de calculer les solutions de l'équation (E) : 𝒂𝒙 𝟐 + 𝒃𝒙 + 𝒄 = 𝟎 a, b et c sont des réels On prendra garde à bien tester tous les cas possibles :  a est nul, et l'équation est en fait une équation du premier degré. Exemple : 4x-2=0 donne une unique solution x=0.5.  le discriminant Δ=(b²- 4ac) est nul, et il n'y a qu'une seule solution, appelée racine double, au problème. Exemple : 2x²+4x+2=0 donne x=-1.  le discriminant Δ est positif, et deux solutions existent : x1=(-b-Δ1/2 )/2a et x2=(- b+Δ1/2 )/2a. Exemple : 2x²+x-6=0 donne x1=1.5 et x2=-2.  le discriminant est négatif, et il n'existe pas de solutions (réelles) au problème. NB : Afin d'utiliser la fonction prédéfinie racine carrée sqrt() de la bibliothèque C, vous prendrez garde à bien rajouter #include <cmath> en tête de votre programme.