Dans cette section, vous trouverez des ressources sur les cours que j'enseigne à savoir de la documentation, du code, des vidéos etc. Dès que je trouve quelque chose d'intéressant à partager, je le mettrai à disposition ici pour mes étudiants.
##Auteur : Enseignant
##École : Collège Marie Victorin
##Session : Automne 2023
##Titre du cours : Introduction à la programmation avec Python
##Titre du programme : devoir4.py
##Courte description du programme : Simulation des transactions de base dans un compte bancaire : dépots, retraits, solde
##Version : 1.0
##Date : 00/00/2023
##Langage et version : Python - 3.11
##Règles de fonctionnement du programme :
##Effectuer un ou plusieurs dépots
##Effectuer un ou plusieurs retraits
##Afficher le solde du compte
##
## fonction qui vérifie si la liste des transactions est vide
def est_vide_liste(pLstTransac):
## Si la liste est vide
if len(pLstTransac) == 0:
return True
else:
return False
## Fonction qui teste si un nombre est positif
def positif():
strPromptTransaction = 'Veuillez entrer le montant de la transaction : '
strErreurTransaction = 'Le montant du dépôt est négatif. Veuillez recommencer.'
flMontant = -1.0
while flMontant < 0:
flMontant = float(input(strPromptTransaction))
if flMontant < 0:
print(strErreurTransaction)
return flMontant
## Fonction qui permet de faire un dépôt
def depot(pLstTransac):
##Tester si le dépot est positif
flDepot = positif()
##Ajouter le dépot à la liste des transactions
pLstTransac.append(flDepot)
return pLstTransac
## Fonction qui permet de faire un retrait.
## Elle prend une liste en paramêtre
## Elle retourne une liste
def retrait(pLstTransac):
strPromptRetrait = 'Veuillez entrer le montant du retrait - (Max = 1000) : '
strErreurRetrait = 'Retrait impossible. Montant > 1000 '
flRetraitMax = 1000
flRetrait = -1.0
## Répéter tant que les conditions ne sont pas satisfaites
while flRetrait < afficher_solde(pLstTransac) or flRetrait > flRetraitMax:
## Saisie de la transaction
flRetrait = float(input(strPromptRetrait))
## Vérification du montant du retrait
if flRetrait < afficher_solde(pLstTransac) or flRetrait > flRetraitMax:
print(strErreurRetrait)
else:
pLstTransac.append(-flRetrait)
return pLstTransac
## Fonction qui permet d'afficher le solde du compte
## Elle prend une liste en paramêtre
## Elle retourne un solde
def afficher_solde(pLstTransac):
##
strAffichageSolde = 'Le solde du compte est : '
flSolde = 0.0
if not est_vide_liste(pLstTransac) :
return sum(pLstTransac)
else:
return 0
## Programme principal
strDevoir = 'Devoir 5 '
strNomProgramme = 'Gestion de compte bancaire'
strTrait = '='
strAuteur = 'Nom de l'étudiant'
strDepot = 'D - Effectuer un (d)épôt'
strRetrait = 'R - Effectuer un (r)etrait'
strSolde = 'S - Afficher le (s)olde '
strListeTransactions = 'L - Afficher la (l)iste des transactions'
strInitialiser = 'Z - Réinitialiser le compte - Mettre le compte à (z)éro '
strFinProgramme = 'Q - Quitter'
strQuitter = 'Fin de de programme. Merci Aurevoir....'
strPromptTransaction = 'Veuillez sélectionner la transaction à effectuer : '
strSoldeCompte = '\nLe solde du compte est : {} $\n'
strMsgCompteReinit = '\nLe compte a été réinitialisé. \n'
strCompteVide = '\nAucune transaction dans le compte...\n'
strErreurChoix = 'Choix erroné'
strTabulation = '\t'
strLineFeed = '\n'
strChoix = ''
lstTransactions = []
lstDepots = []
lstRetraits = []
flSommeTransactions = 0.0
print(strDevoir)
print(strTrait * len(strDevoir))
print(strAuteur)
print(strTrait * len(strAuteur))
## Affichage du menu
while strChoix not in ['q','Q']:
print(strNomProgramme)
print(strTrait * len(strNomProgramme))
print(strDepot)
print(strRetrait)
print(strSolde)
print(strListeTransactions)
print(strInitialiser)
print(strFinProgramme)
print()
strChoix = input(strPromptTransaction)
if strChoix in ['q','Q']:
print(strQuitter)
elif strChoix in ['d','D']:
lstDepots = []
## Ajout des dépôts à la liste des transactions
lstTransactions = lstTransactions + depot(lstDepots)
flSommeTransactions = afficher_solde(lstTransactions)
## Affichage du solde
print(strSoldeCompte.format(flSommeTransactions))
elif strChoix in ['r','R']:
lstRetraits = []
## Vérifier si le compte contient déjà des transactions
if est_vide_liste(lstTransactions):
print(strCompteVide)
else:
## Ajout des retraits à la liste des transactions
lstTransactions = lstTransactions + retrait(lstRetraits)
flSommeTransactions = afficher_solde(lstTransactions)
## Affichage du solde
print(strSoldeCompte.format(flSommeTransactions))
elif strChoix in ['s','S']:
## Affichage du solde du compte
print(strSoldeCompte.format(afficher_solde(lstTransactions)))
elif strChoix in ['l','L']:
## Vérification de la liste des transactions
if est_vide_liste(lstTransactions):
print(strCompteVide)
else:
## Affichage de la lsite des transactions
print('Relevé de compte')
print('Opération',strTabulation,'Montant')
for transaction in lstTransactions:
if transaction < 0:
print('Débit : ', strTabulation*2, transaction)
else:
print('Crédit : ', strTabulation*2, transaction)
print(strSoldeCompte.format(afficher_solde(lstTransactions)))
elif strChoix in ['z','Z']:
## Réinitialiser le liste
lstTransaction = []
if est_vide_liste(lstTransaction):
print(strMsgCompteReinit)
else :
print(strErreurChoix)
W3schools
Python.org