IUT 1A – semestre 2

Groupe n°4

TP n° 2 – 09/02/04

 

Sujet : l’objectif de ce TP est de mettre en œuvre la surcharge d’opérateurs dans une classe, en C++.

Créez une classe Rationnel qui permet de représenter un nombre rationnel (de la forme a/b  où,  a entier –signé-, b entier non nul) avec :

Pour constructeurs/destructeur :

  1. Un constructeur par défaut, qui initialise le rationnel à 0 (avec le plus simple dénominateur)
  2. Un constructeur avec pour paramètres : le numérateur et le dénominateur (de types int ou long)

Nota : pour 1. et 2. faire les tests nécessaires…

  1. Un constructeur avec pour paramètre : un entier (car un entier est aussi un rationnel !) Nota : utiliser la forme la plus simple….
  2. Est-il nécessaire de faire un destructeur ? Pourquoi ?
  3. Donnez un moyen de regrouper  (2) et (3) en une seule méthode

 

Pour méthodes :

  1. Une méthode de calcul d’une valeur approchée du rationnel (un réel, donc)
  2. Une méthode permettant de réduire un rationnel (forme minimale)
  3. Une méthode permettant d’afficher un rationnel

Pour opérateurs :
   Surchargez les opérateurs + - * / pour faire  (avec réduction) :

  1. La somme de deux rationnels ( + )
  2. La soustraction de deux rationnels ( - , opérateur binaire )
  3. L’opposé d’un rationnel ( - , opérateur unaire )
  4. Le produit de deux rationnels ( * )
  5. Le produit d’un rationnel et d’un entier ( * , en prévoyant les deux cas : rationnel*entier  et entier*rationnel !)
  6. La division entre deux rationnels ( / )
  7. Est-ce que les opérateurs demandés sont suffisants pour toutes les formes d’expressions ? Comment traiter (avec le moins d’effort) tous les cas ?
  8. Faites les alternatives sous forme de fonctions amies ( friend ) de ces opérateurs
  9. Surchargez l’opérateur == pour réaliser la comparaison de deux rationnels (même non réduits, au départ)

Faites une fonction principale ( main ) pour tester les méthodes et les opérateurs créés.

A voir :
Surchargez les opérateurs  >> et << afin de manipuler les complexes directement avec cin et cout

 


 

 

 

 











Ajouter aux Favoris Ajouter aux votre page
 

 





Autoformations les cours informatiques en vidéos gratuitement
:: Copyright © 2008 http://www.autoformations.co.cc All rights reserved ::