[Tutor] Simple bank account oriented object

Marco Rompré marcodrompre at gmail.com
Wed Mar 31 04:26:22 CEST 2010


Hi im doin a programmin course at university and in one on my exercise i
have to do that

I had to define a class CompteBancaire(CompteBancaire is bankaccount in
french), that would allow me to create objects Compte1, Compte2,etc.

     The following methods need to be defined
      - depot(somme)         would allow me to add cash to my account
balance
      - retrait(somme)        would allow me to withdraw some cash from my
account
      - ajouterInterest()      would allow me to add interest
      - affiche()                 would allow me to display the account
owner and his account balance

the retrait(somme) method is not supposed to let the account balance being
negative.



3.2

Create a sub-class to CompteBancaire and name it  CompteEtudiant. Each
CompteEtudiant (student account) should have a $1000CAD credit line. Write a
builder or constructor for this new class. Surcharge the retrait(somme)
method to make sure that the student can withdraw to their limit.
Test the class

Here's my code for now this is 3.1and 3.2 in the same code

Please help me i think im on the right track but i need some guidance in the
dark. lol

Thank you tutors


#Exercice 3,1 - Gestion d'un compte bancaire

class CompteBancaire:
    "définition d'un compte bancaire"

    def __init__(self,nom,solde,interet):       #Nous allons instancier et
initialiser les objets à la classe
        self.nom, self.solde, self.interet = nom,solde,interet

    def depot(self,somme=0):                    #Définition des fonctions
        self.solde=self.solde+somme             #Pour additionner les dépôts
au compte

    def retrait(self,somme=0):                  #Pour soustraire les dépôts
au compte
        if self.solde-somme<0:
            print "Les fonds sont insuffisants. Essayez un autre montant
pour votre retrait!"
        else:
            self.solde=self.solde-somme

    def calculInteret(self,calculInteret=0):     #Calcul des intérêts et du
solde résiduel
        self.interet=self.solde*calculInteret/100
        self.solde=(self.solde*calculInteret/100)+self.solde

    def affiche_solde(self):
        print "Le solde du compte bancaire de %s est de %d $CAD"
%(self.nom,self.solde)
        print "Vous avez récolté %d $CDN en intérêt"%(self.interet)
#
######################
# création de la gestion d'un compte étudiant autorisant une marge de crédit
de (1 000$)

class CompteEtudiant(CompteBancaire):
    "définition du compte bancaire pour étudiant dérivé du compte bancaire
standard"
    def __init__(self, nom='Étudiant', solde=200, margeCre = 1000):
#Limite de marge de crédit fixé à 1 000$
        CompteBancaire.__init__(self, nom='Sandon', solde=800, interet=0)
        self.nom, self.solde, self.margeCre = nom, solde, margeCre

    def margeCre (self, somme=0):
        if somme-self.solde>margeCre:
            print "Désolé vous dépassez la marge de crédit autorisé"
        else:
            self.solde = (self.solde-somme)
            margeCre=margeCre+self.solde


    def affiche_solde(self, somme=0):
        print "Le solde du compte bancaire de %s est de %d $CAD"
%(self.nom,self.solde)
        print "Le solde de votre marge de crédit est de %d $CAD"
%(self.margeCre)
        print "Vous avez récolté %d $CDN en intérêt"%(self.interet)

##############################################################
#jeux d'essai avec des valeurs fictives
if __name__=='__main__':        #Référence au corps principal du programme.
    compte1 = CompteBancaire('Sandon',800,0)
    compte1.depot(0)
    compte1.retrait(1200)
    compte1.calculInteret(10)
    compte1.affiche_solde()
    compte2 = CompteEtudiant('Étudiant', 800)
    compte2.retrait(900)
    compte2.affiche_solde()
##################################



-- 
Ocram the newbie
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/tutor/attachments/20100330/2e3f60b2/attachment.html>


More information about the Tutor mailing list