Bonsoir,

Je dois réaliser un petit programme pour mon cours de programmation et mon soucis n'est cette fois-çi pas de programmer mais de trouver quoi faire.. Donc je vous demande à l'aide pour créer une classe..

Voici deux exemples qu'on a fait en classe (c'est le prof qui a trouvé) :

Classe voiture :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
 
# -*- coding: utf-8 -*-
 
from random import randrange
 
class Voiture:
 
    def __init__(self, modele, plaque, couleur, typeVehicule = 'Nouvelle'):
 
        self.modele = modele
        self.plaque = plaque.upper()
        self.couleur = couleur
        self.nbreCourse = 0
        self.typeVehicule = typeVehicule
 
        if self.typeVehicule == 'Occasion':
            self.kilometres = randrange(100000)
        else :
            self.kilometres = 0
 
    def descripModele(self):
 
        print("Modèle :",self.modele)
        print("Plaque :",self.plaque)
        print("Couleur :",self.couleur)
        print("Nombre de courses :",self.nbreCourse)
        print("Type de véhicule :",self.typeVehicule)
        print("Kilométrage :",self.kilometres)
 
    def roule(self, nbreKilometres):
 
        self.kilometres += nbreKilometres
 
    def compareVoiture(self, autreVoiture):
        """Compare une voiture à une autre et indique la meilleure au niveau du kilométrage."""
        ch = '{} à plus de kilomètres que {}.'
        ch2 = '{} et {} ont le même nombre de kilomètres.'
 
        if self.kilometres < autreVoiture.kilometres :
            print(ch.format(autreVoiture.modele, self.modele))
        elif self.kilometres == autreVoiture.kilometres :
            print(ch2.format(autreVoiture.modele, self.modele))
        else :
            print(ch.format(self.modele, autreVoiture.modele))
 
    def course(self, voitureDeux):
        """On génère pour les deux voitures un nombre entre 0 et 100. La voiture qui a le plus grand nombre gagne et on lui ajoute une course au compteur."""
 
        nbreCourseI = randrange(100)   # courses gagnées self
        nbreCourseII = randrange(100)  # courses gagnées autre voiture
        ch = 'La {} gagne la course !'
 
        if nbreCourseI > nbreCourseII :
            print(ch.format(self.modele))
            self.nbreCourse += 1
        else :
            print(ch.format(voitureDeux.modele))
            voitureDeux.nbreCourse += 1
 
    def champion(self, voitureDeux):
        """Compare le nombre de courses des différentes voitures et indique le champion qui a le plus de victoires."""
 
        ch = 'La {} avec la plaque {} est championne !!'
 
        if self.nbreCourse > voitureDeux.nbreCourse :
            print(ch.format(self.modele, self.plaque))
        else :
            print(ch.format(voitureDeux.modele, voitureDeux.plaque))
 
    def changePlaque(self, nouvellePlaque):
        """Permet de changer la plaque d'une voiture."""
 
        self.plaque = nouvellePlaque.upper()
 
    def consommation(self, litreCent):
        """Calcule la consommation totale d'essence d'après le nombre de kilomètres."""
 
        consommation = (self.kilometres*litreCent)/100
        ch = 'La voiture a consommée {} litres en {} kilomètres.'
        print(ch.format(consommation, self.kilometres))
 
    def entretient(self, nouvelleCouleur = ''):
        """On enlève 1000 kilomètres à la voiture et si on veut on peut changer de couleur."""        
 
        if nouvelleCouleur != '' :
            self.couleur = nouvelleCouleur
 
        self.kilometres -= 1000
 
    def crash(self):
 
        ch = "La voiture {} s'est crachée !"
        ch2 = "La voiture {} ne s'est pas crachée !"
        nombre = randrange(10)
        if nombre == 5 :
            print(ch.format(self.modele))
        else :
            print(ch2.format(self.modele))
 
 
# ---------- Programme principal ---------- #
 
voiture1 = Voiture("BMW", "AXE-889", "Noire", "Occasion")
voiture1.descripModele()
voiture1.roule(12500)
print('Après ajout de quelques kilomètres :')
voiture1.descripModele()
voiture2 = Voiture("Audi","YES-778", "Gris foncé", "Nouvelle")
voiture2.descripModele()
print('Affichage de la voiture ayant le moins de kilomètres : ')
voiture1.compareVoiture(voiture2)
print('La course commence... Qui va gagner ?')
voiture1.course(voiture2)
print('Le champion est :')
voiture1.champion(voiture2)
print('On change de plaque à la voiture 1 :')
voiture1.changePlaque('zee-100')
voiture1.descripModele()
print('La consommation de la voiture 1 :')
voiture1.consommation(15)
print('Après un entretient avec nouvelle couleur :')
voiture1.entretient('Mauve')
voiture1.descripModele()
print('Après un entretient sans nouvelle couleur :')
voiture1.entretient()
voiture1.descripModele()
print('Est-ce que la voiture va se cracher ?')
voiture1.crash()
Classe banque :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
 
# -*- coding: utf-8 -*-
 
class CompteBancaire:
 
    def __init__(self, nom, montant_initial=0):
 
        self.nom = nom
        self.montant = montant_initial
 
    def affiche(self):
 
        print(self.nom)
        print("Solde actuel du compte (€) :", self.montant )
 
    def depose(self, montant):
 
        self.montant += montant
 
    def  retire(self, montant):
 
        self.montant -= montant
        print('Vous venez de retirer :', montant, '€')
 
 
class Banque:
 
    def __init__(self, nom, nomFichier):
 
        self.nom = nom
        self.nomFi = nomFichier
 
    def ajoutCompte(self):
 
        nomCompte = input('Entrez le nom du compte : ')
        montant = input('Montant client : ')
        compteClient = CompteBancaire(nomCompte, montant)
 
        #écriture dans le fichier
        oFich = open(self.nomFi, 'a')
        oFich.write(compteClient.nom+'#'+compteClient.montant+'\n')
        oFich.close()
 
    def transferCompte(self, compte):
 
        #écriture dans le fichier
        oFich = open(self.nomFi, 'a')
        oFich.write(compte.nom+'#'+str(compte.montant)+'\n')
        oFich.close()
 
    def rechercheCompte(self, nomCompte):
 
        oFich = open(self.nomFi, 'r')
        listeClient = oFich.readlines()
        ok = 0
        for elem in listeClient:
            listeDataClient = elem.split('#')
            if listeDataClient[0] == nomCompte :
                print(listeDataClient[0])
                print(listeDataClient[1])
                ok = 1
        if ok == 0 : #client non trouvé
            print('Client introuvable.')
        oFich.close()
 
 
#compte1 = CompteBancaire('Hanns-G', 500)
#compte2 = CompteBancaire('Logitech', 15000)
banqueDexia = Banque('Dexia', 'DexiaBanque')
#banqueDexia.ajoutCompte()
banqueDexia.rechercheCompte('Logitech')
banqueDexia.rechercheCompte(input('Entrez le nom du compte : '))
Voilà... Merci pour vos idées !!