• Aide
  • Eurêkoi Eurêkoi

Livre

C++ par la pratique : recueil d'exercices et aide-mémoire

Résumé

Les notions de base de la programmation procédurale (variables, opérateurs, structures de contrôles, fonctions, etc.) et les aspects plus spécifiquement "objets" de la programmation (classe, héritage, polymorphisme, etc). Une centaine d'exercices gradués, tous accompagnés d'une solution complète et souvent détaillée est proposée. ©Electre 2018


  • Autre(s) auteur(s)
  • Éditeur(s)
  • Date
    • cop. 2017
  • Langues
    • Français
  • Description matérielle
    • 1 vol. (XIII-396 p.) : ill. en coul.; ; 24 cm
  • Collections
  • Sujet(s)
  • ISBN
    • 978-2-88915-236-0
  • Indice
  • Quatrième de couverture
    • C++ par la pratique

      Recueil d'exercices corrigés et aide-mémoire

      Cet ouvrage a pour objectif d'offrir la pratique nécessaire à tout apprentissage de la programmation : un cadre permettant au débutant de développer ses connaissances sur des cas concrets. Il se veut un complément pédagogique à un support de cours.

      Avec près d'une centaine d'exercices gradués de programmation en C++17, accompagnés d'une solution complète et souvent détaillée, l'ouvrage est structuré en deux parties : la première présente la programmation procédurale, tandis que la seconde aborde le paradigme de la programmation objet. Chacune de ces parties se termine par un chapitre regroupant des exercices généraux. Chaque chapitre contient un exercice pas à pas et une série d'exercices classés par niveaux de difficulté. L'ensemble des codes sources des corrigés est disponible sur le site www.ppur.org.

      Cet ouvrage est principalement destiné aux étudiants du premier cycle universitaire ainsi qu'à tous ceux souhaitant parfaire leurs connaissances en C++.


  • Tables des matières
      • C++ par la pratique

      • Recueil d'exercices corrigés et aide-mémoire

      • Jean-Cédric Chappelier, Florian Seydoux

      • I Programmation procédurale5
      • 1 Variables, opérateurs et expressions 7
      • 1.1 Principaux rappels7
      • 1.2 Pas à pas : mon premier programme C++8
      • 1.3 Exercices13
      • Exercice 1 : quel âge avez-vous ? (variables)13
      • Exercice 2 : quelques calculs (variables et expressions)14
      • 2 Structures de contrôle 15
      • 2.1 Principaux rappels15
      • 2.2 Pas à pas : résolution d'équations du second degré16
      • 2.3 Exercices20
      • Exercice 3 : tables de multiplication (itération for)20
      • Exercice 4 : intervalles (expressions conditionnelles)20
      • Exercice 5 : expressions arithmétiques (expressions, branchements conditionnels)21
      • Exercice 6 : rebonds de balles (itération for)21
      • Exercice 7 : rebonds de balles revisités (boucles do... while)22
      • Exercice 8 : une histoire de prêt (boucles)23
      • Exercice 9 : nombres premiers (structures de contrôle)23
      • Exercice 10 : équations du 3e degré (expressions, structures de contrôle)23
      • 3 Fonctions 25
      • 3.1 Principaux rappels25
      • 3.2 Pas à pas : calcul de note27
      • 3.3 Exercices30
      • Exercice 11 : portée30
      • Exercice 12 : demander un nombre (prototypes)30
      • Exercice 13 : échanges (passage des paramètres, surcharge)31
      • Exercice 14 : la fonction cosinus (définition et appel de fonction)32
      • Exercice 15 : calcul approché d'une intégrale (fonctions)33
      • 4 Types avancés 35
      • 4.1 Principaux rappels35
      • 4.2 Pas à pas 1 : notes (tableaux dynamiques)40
      • 4.3 Pas à pas 2 : appartenance (tableaux)42
      • 4.4 Pas à pas 3 : petites fiches (structures)45
      • 4.5 Pas à pas 4 : listes chaînées (pointeurs)48
      • 4.6 Exercices54
      • Exercice 16 : générateur automatique de lettres (fonctions, chaînes de caractères)54
      • Exercice 17 : échauffement avec les tableaux dynamiques55
      • Exercice 18 : produit scalaire (tableaux dynamiques)55
      • Exercice 19 : segmentation en mots (string)56
      • Exercice 20 : multiplication de matrices (tableaux dynamiques)57
      • Exercice 21 : placement sans recouvrement (tableaux)59
      • Exercice 22 : nombres complexes (structures)60
      • Exercice 23 : sélection (pointeurs)61
      • Exercice 24 : QCM (structures + vector)61
      • Exercice 25 : nombres complexes revisités (structures)63
      • Exercice 26 : référence (structures, références)64
      • Exercice 27 : intégrales revisitées (tableaux, pointeurs)65
      • 5 Flots 67
      • 5.1 Principaux rappels67
      • 5.2 Pas à pas 1 : lecture et écriture sur fichier68
      • 5.3 Pas à pas 2 : manipulateurs de fichiers71
      • 5.4 Exercices73
      • Exercice 28 : écriture dans un fichier (ofstream)73
      • Exercice 29 : lecture depuis un fichier (ifstream + manipulateurs)74
      • Exercice 30 : statistiques sur un fichier (fichiers, tableaux)75
      • Exercice 31 : QCM revisités (fichiers, structures)76
      • 6 Fonctions récursives 79
      • 6.1 Pas à pas : diverses façons de sommer79
      • 6.2 Exercices81
      • Exercice 32 : factorielle (fonctions récursives)81
      • Exercice 33 : nombres de Fibonacci (fonctions récursives)82
      • Exercice 34 : recherche dichotomique (fonctions récursives)83
      • Exercice 35 : tours de Hanoï (fonctions récursives)85
      • Exercice 36 : mythiques labyrinthes (fonctions récursives)87
      • 7 Exercices généraux 89
      • Exercice 37 : tri bulles89
      • Exercice 38 : algorithme d'Euclide90
      • Exercice 39 : piles et parenthèses91
      • Exercice 40 : arithmétique rationnelle93
      • Exercice 41 : piles et notation polonaise inverse94
      • Exercice 42 : recherche approchée de racine96
      • Exercice 43 : culture de masse97
      • Exercice 44 : tri de Shell98
      • Exercice 45 : jeu du pendu99
      • II Programmation orientée objets103
      • 8 Introduction à la POO 105
      • 8.1 Principaux rappels105
      • 8.2 Pas à pas : objets et classes106
      • 8.3 Exercices109
      • Exercice 46 : petits ronds (objets/classes)109
      • Exercice 47 : coordonnées tridimensionnelles (objets/classes)110
      • Exercice 48 : un petit tour de magie (objets/classes)111
      • 9 Constructeurs et destructeurs 113
      • 9.1 Principaux rappels113
      • 9.2 Pas à pas : animaux en peluche115
      • 9.3 Exercices119
      • Exercice 49 : apéritif (constructeurs/destructeurs)119
      • Exercice 50 : un peu de douceur dans ce monde de brutes (constructeurs/destructeurs)119
      • Exercice 51 : balles rebondissantes, le retour (constructeurs/destructeurs)120
      • 10 Surcharge d'opérateurs 121
      • 10.1 Principaux rappels121
      • 10.2 Pas à pas : polynômes122
      • 10.3 Exercices129
      • Exercice 52 : nombres complexes (surcharge d'opérateurs)129
      • Exercice 53 : nombres complexes encore (pointeurs, constructeurs)130
      • Exercice 54 : encore un peu plus de polynômes (surcharge d'opérateurs)131
      • 11 Héritage 133
      • 11.1 Principaux rappels133
      • 11.2 Pas à pas : figures géométriques134
      • 11.3 Exercices139
      • Exercice 55 : que de véhicules ! (héritage)139
      • Exercice 56 : vecteurs tridimensionnels (héritage)141
      • Exercice 57 : vecteurs unitaires (héritage)141
      • Exercice 58 : un peu d'algèbre élémentaire (héritage)142
      • 12 Polymorphisme 145
      • 12.1 Principaux rappels145
      • 12.2 Pas à pas : jolie collection de véhicules145
      • 12.3 Exercices148
      • Exercice 59 : formes polymorphiques (polymorphisme)148
      • Exercice 60 : encore des figures géométriques (collection hétérogène)149
      • Exercice 61 : puissance 4 (polymorphisme)150
      • Exercice 62 : un peu plus d'algèbre élémentaire (classes abstraites)152
      • 13 Héritage multiple 155
      • 13.1 Principaux rappels155
      • 13.2 Pas à pas : zoologie156
      • 13.3 Exercices160
      • Exercice 63 : animaux en peluche (héritage multiple)160
      • Exercice 64 : employés (héritage multiple, collection hétérogène)162
      • Exercice 65 : jeu de cartes (héritage multiple)164
      • 14 Templates et bibliothèque standard 167
      • 14.1 Principaux rappels167
      • 14.2 Pas à pas : programmation générique168
      • 14.3 Exercices171
      • Exercice 66 : ensembles et itérateurs (bibliothèque standard)171
      • Exercice 67 : tris revisités (template, bibliothèque standard)172
      • 15 Exceptions 173
      • 15.1 Principaux rappels173
      • 15.2 Pas à pas : gestion des exceptions173
      • 15.3 Exercices178
      • Exercice 68 : le retour des rationnels (exceptions)178
      • Exercice 69 : compression RLE (exceptions)179
      • 16 Exercices généraux 181
      • Exercice 70 : algèbre matricielle181
      • Exercice 71 : fichiers et programmes182
      • Exercice 72 : bibliothèque 1183
      • Exercice 73 : échecs186
      • Exercice 74 : bibliothèque 2188
      • III Corrigés191
      • 1 Variables, opérateurs et expressions 193
      • Exercice 1 : quel âge avez-vous ? (variables)193
      • Exercice 2 : quelques calculs (variables et expressions)194
      • 2 Structures de contrôle 197
      • Exercice 3 : tables de multiplication (itération for)197
      • Exercice 4 : intervalles (expressions conditionnelles)197
      • Exercice 5 : expressions arithmétiques (expressions, branchements conditionnels)198
      • Exercice 6 : rebonds de balles (itération for)200
      • Exercice 7 : rebonds de balles revisités (boucles do... while)201
      • Exercice 8 : une histoire de prêt (boucles)202
      • Exercice 9 : nombres premiers (structures de contrôle)203
      • Exercice 10 : équations du 3e degré (expressions, structures de contrôle)204
      • 3 Fonctions 207
      • Exercice 11 : portée207
      • Exercice 12 : demander un nombre (prototypes)208
      • Exercice 13 : échanges (passage des paramètres, surcharge)210
      • Exercice 14 : la fonction cosinus (définition et appel de fonction)211
      • Exercice 15 : calcul approché d'une intégrale (fonctions)212
      • 4 Types avancés 215
      • Exercice 16 : générateur automatique de lettres (fonctions, chaînes de caractères)215
      • Exercice 17 : échauffement avec les tableaux dynamiques216
      • Exercice 18 : produit scalaire (tableaux dynamiques)217
      • Exercice 19 : segmentation en mots (string)218
      • Exercice 20 : multiplication de matrices (tableaux dynamiques)220
      • Exercice 21 : placement sans recouvrement (tableaux)222
      • Exercice 22 : nombres complexes (structures)225
      • Exercice 23 : sélection (pointeurs)226
      • Exercice 24 : QCM (structures + vector)227
      • Exercice 25 : nombres complexes revisités (structures)229
      • Exercice 26 : référence (structures, références)231
      • Exercice 27 : intégrales revisitées (tableaux, pointeurs)232
      • 5 Flots 237
      • Exercice 28 : écriture dans un fichier (ofstream)237
      • Exercice 29 : lecture depuis un fichier (ifstream + manipulateurs)238
      • Exercice 30 : statistiques sur un fichier (fichiers, tableaux)239
      • Exercice 31 : QCM revisités (fichiers, structures)242
      • 6 Fonctions récursives 249
      • Exercice 32 : factorielle (fonctions récursives)249
      • Exercice 33 : nombres de Fibonacci (fonctions récursives)252
      • Exercice 34 : recherche dichotomique (fonctions récursives)254
      • Exercice 35 : tours de Hanoï (fonctions récursives)255
      • Exercice 36 : mythiques labyrinthes (fonctions récursives)258
      • 7 Exercices généraux 269
      • Exercice 37 : tri bulles269
      • Exercice 38 : algorithme d'Euclide270
      • Exercice 39 : piles et parenthèses272
      • Exercice 40 : arithmétique rationnelle274
      • Exercice 41 : piles et notation polonaise inverse278
      • Exercice 42 : recherche approchée de racine281
      • Exercice 43 : Culture de masse281
      • Exercice 44 : tri de Shell285
      • Exercice 45 : jeu du pendu286
      • 8 Introduction à la POO 289
      • Exercice 46 : petits ronds (objets/classes)289
      • Exercice 47 : coordonnées tridimensionnelles (objets/classes)292
      • Exercice 48 : un petit tour de magie (objets/classes)295
      • 9 Constructeurs et destructeurs 299
      • Exercice 49 : apéritif (constructeurs/destructeurs)299
      • Exercice 50 : un peu de douceur dans ce monde de brutes (constructeur/destructeurs)299
      • Exercice 51 : balles rebondissantes, le retour (constructeurs/destructeurs)299
      • 10 Surcharge d'opérateurs 303
      • Exercice 52 : nombres complexes (surcharge d'opérateurs)303
      • Exercice 53 : nombres complexes encore (pointeurs, constructeurs)308
      • Exercice 54 : encore un peu plus de polynômes (surcharge d'opérateurs)309
      • 11 Héritage 313
      • Exercice 55 : que de véhicules ! (héritage)313
      • Exercice 56 : vecteurs tridimensionnels (héritage)316
      • Exercice 57 : vecteurs unitaires (héritage)321
      • Exercice 58 : un peu d'algèbre élémentaire (héritage)326
      • 12 Polymorphisme 329
      • Exercice 59 : formes polymorphiques (polymorphisme)329
      • Exercice 60 : encore des figures géométriques (collection hétérogène)332
      • Exercice 61 : puissance 4 (polymorphisme)340
      • Exercice 62 : un peu plus d'algèbre élémentaire (classes abstraites)344
      • 13 Héritage multiple 349
      • Exercice 63 : animaux en peluche (héritage multiple)349
      • Exercice 64 : employés (héritage multiple, collection hétérogène)352
      • Exercice 65 : jeu de cartes (héritage multiple)356
      • 14 Templates et bibliothèque standard 361
      • Exercice 66 : ensembles et itérateurs (bibliothèque standard)361
      • Exercice 67 : tris revisités (template, bibliothèque standard)363
      • 15 Exceptions 371
      • Exercice 68 : le retour des rationnels (exceptions)371
      • Exercice 69 : compression RLE (exceptions)372
      • 16 Exercices généraux 375
      • Exercice 70 : algèbre matricielle375
      • Exercice 71 : fichiers et programmes377
      • Exercice 72 : bibliothèque 1379
      • Exercice 73 : échecs382
      • Exercice 74 : bibliothèque 2384
      • Annexes388
      • A Bibliographie annotée391
      • B Correspondance avec le livre Programmation orientée objets en C++395

  • Origine de la notice:
    • Electre
  • Disponible - 681.229(07) CHA

    Niveau 3 - Informatique