[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