Cours:PooTD heritage : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
m (Fredmn a déplacé la page Cours:PooTD4 heritage vers Cours:PooTDheritage)
m (Fredmn a déplacé la page Cours:PooTDheritage vers Cours:PooTD heritage sans laisser de redirection)
(Aucune différence)

Version du 24 septembre 2021 à 09:07

TD 4 : héritage

On débute avec l'implémenation suivante d'un compte bancaire :

// compte.h
#ifndef COMPTE_H
#define COMPTE_H

#include <iostream>

class Compte {
    public:
        Compte(int _num);
        void set_solde(float somme);
        float get_solde();
        int get_numero();
        void depot(float somme);
        void retrait(float somme);
        std::string to_string();
    private:
        int num;
        float solde;
};

#endif // COMPTE_H
// compte.cpp
#include "compte.h"

Compte::Compte(int _num) {
    num = _num;
    solde = 0;
}

void Compte::set_solde(float somme)
{
    solde = somme;
}

float Compte::get_solde() {
    return solde;
}

int Compte::get_numero() {
    return num;
}

void Compte::depot(float somme) {
    solde = solde + somme;
}

void Compte::retrait(float somme) {
    solde = solde - somme;
}

string Compte::to_string() {
    return "Compte n°" + std::to_string(num) + " - solde = " + std::to_string(solde);
}

L'objectif est de créer deux classes héritant de Compte :

  • Un ComptePayant est un compte bancaire pour lequel chaque opération de retrait et de versement est payante et vaut 5 (euros).
  • Un compteEpargne est un compte bancaire qui possède en plus un attribut taux_interet et une méthode calcul_interet() qui permet de mettre à jour le solde en tenant compte des intérêts.

Travail à faire

  1. Faire le diagramme des classes
  2. Définir la classe Compte
  3. Définir la classe CompteEpargne.
  4. Définir la classe ComptePayant.
  5. Définir la fonction main() permettant de tester les classes :
    1. Créer une instance de la classe Compte , une autre de la classe CompteEpargne et une instance de la classe ComptePayant
    2. Faire appel à la méthode depot() de chaque instance pour déposer une somme quelconque dans ces comptes.
    3. Faire appel à la méthode retrait() de chaque instance pour retirer une somme quelconque de ces comptes.
    4. Faire appel à la méthode calcul_interêt() du compte Epargne.
    5. Afficher le solde des 3 comptes.