Vous allez mettre en oeuvre un programme qui permet de tester et de visualiser un traitement binaire. A partir d'un message saisi par l'utilisateur :
Pour ce programme, utiliserez les classes bitset et string.
.
Vous allez implémenter un conteneur (que vous appelerez tableau) de type vector qui représente un tableau d'entier en suivant le scénario proposé sur les écrans ci-contre. Proposez donc un menu qui propose un certain nombre de rubriques qui permettent de gérer convenablement le tableau. Systématiquement, le contenu du tableau devra être affiché avec quelques valeurs particulières. Les rubriques sont les suivantes :
En reprenant le principe du programme précédent, vous allez changer de type de conteneur en prenant cette fois-ci le conteneur list. Vous allez utiliser le même scénario en faisant juste une toute petite modification. Au lieu de l'appeler tableau, vous le nommerez liste.
Corrections : Visualisation du résultat -- récupération du fichier source
.
Vous allez réaliser un programme qui permet de recenser et de stocker dans un conteneur chaque mot issue d'un texte saisie éventuellement sur plusieurs lignes.
Si cela n'est pas déjà fait, la première lettre de chaque mot doit être mis en majuscule.
Pour finir, la suite de mot doit être placée dans l'ordre alphabétique.
Proposez un affichage qui montre le contenu de votre suite. Chaque mot doit être visualisé les uns en dessous des autres.
Vous allez de nouveau effectuer une recherche sur la suite des diviseurs que comporte un nombre quelconque. Pour cela vous allez créer une nouvelle classe Diviseurs qui implémente tout le comportement que nous avons déjà étudier dans le chapitre des fonctions. Respectez, le diagramme UML proposé ci-contre. Bien entendu, vous pouvez vous servir de l'implémentation déjà élaborer précédement. Cette classe est composée d'un certaine nombre de méthodes :
suite : attribut qui représente la suite des diviseurs composés dans nombre. TP et codage relatif à la fonction rechercheDiviseurs
Voici un exemple du résultat attendu :
Corrections : Cliquez sur le fichier source à visualiser

Vous allez vous servir de la classe précédente pour élaborer une nouvelle classe, la classe Rationnel. Cette classe représente en fait essentiellement des fractions dont chacun des termes (numérateur, dénominateur) est un entier positif. Cette fraction peut également être positive ou négative.
Il est possible de construire n'importe quelle type de fraction, seulement, l'objet de cette classe au moment de sa création doit faire en sorte d'avoir la fraction la plus simple possible. Ainsi, lorsque nous créons le nombre rationnel 21/14, nous devons avoir en finalité le nombre rationnel 3/2. Une méthode s'occupe de ce genre de traitement, il s'agit de la méthode simplification, et c'est cette méthode qui utilise les compétences de la classe Diviseur afin de faire les recherches nécessaires sur les diviseurs communs. A ce sujet, vous allez utiliser la classe que vous avez construite au TP précédent à laquelle, vous allez rajouter deux nouvelles méthodes :
Pour finir, vous allez faire en sorte qu'il soit possible d'additionner deux nombres Rationnel(s). Voici, ci-dessous, une des utilisation possible.

Corrections : Cliquez sur le fichier source à visualiser
Cette fois-ci, nous allons mettre en oeuvre une classe Polynome qui doit pouvoir représentée, par exemple, l'écriture suivante :

Chaque objet de cette classe doit avoir son propre degre et chaque coefficient est représenté par un nombre Rationnel.

En tenant compte du diagramme de classe ci-dessus et du scénario proposé ci-dessous, construisez cette classe Polynome.

Corrections : Cliquez sur le fichier source à visualiser
Vous allez mettre en oeuvre un programme qui gère un répertoire téléphonique. Dans cette gestion vous devez avoir la possibilité :
A chaque fois que le menu s'affiche, vous devez également indiquer le nombre de personnes déjà présentes dans votre répertoire, ainsi que la liste des personnes avec leur numéro de téléphones.
Ci contre se trouve un exemple de scénario d'utilisation de votre programme.
Reprenez le programme ci-dessus en proposant, cette fois-ci, d'avoir pour une même personne, plusieurs numéros de téléphones.