Exercices de base#

Exercice 1#

On définit un objet avec la classe Fruit en Python:

class Fruit:

    def __init__(self):
        self.nom = ''
        self.prix = 0
        self.quantite = 0
        self.masse = 0
  1. Quels sont les attributs et leurs types définis dans la classe Fruit?

  2. On instancie un premier objet a_1 = Fruit().

    1. Quelles sont les valeurs des attributs de l’objet a_1 ?

    2. Quelle est l’instruction Python qui affiche la masse de l’objet a_1?

  3. L’objet a_1 représente 1 kg de pommes au prix de 3,20 euros. Quelles instructions Python modifient l’objet a_1 ?

  4. Modifier le code de la classe Fruit pour que l’instanciation a_1 = Fruit('pommes',masse=1,prix=3.20) représente 1 kg de pommes à l’instanciation de l’objet.

Exercice 2#

On donne la classe Personne écrite en langage Python:

class Personne:

    def __init__(self,n,a,h):
        self.nom = n
        self.age = a
        if h != '':
            self.hobby = h
        else:
            self.hobby = 'aucun'
  1. On instancie un premier objet p_1 = Personne('Alice',9,'magie'). Quelles sont les valeurs des attributs de l’objet p_1 ?

  2. Quelle est l’instruction Python qui instancie la variable p_2 représentant la personne nommée Bob, âgée de 7 ans et qui n’a pas de hobby ?

  3. L’instruction Python p_3 = Personne('Carlo','musique',75) renvoie-t-elle une erreur ? Si non, est-elle correcte ? Justifier.

Exercice 3#

On considère le tableau de données suivant:

nom

age

jeu

sport

instrument

Alice

9

cartes

course à pied

piano

Bob

7

quilles

natation

pipo

Carlo

75

fléchettes

kayak

guitare

On veut représenter ces données par des objets construits avec la classe Identite.

  1. Quels sont les attributs à définir pour la classe Identite ?

  2. Écrire en Python, la classe Identite avec son constructeur définissant les attributs de nos objets.

  3. Instancier 3 objets avec les variables p_1, p_2 et p_3 représentant les données du tableau.

  4. La fonction age_moyen prend en paramètre une liste d’objets et renvoie l’âge moyen des différents objets. Écrire en Python cette fonction et calculer l’âge moyen de nos 3 objets.

  5. Ajouter une méthode afficher qui affiche pour chaque objet les différents attributs et leurs valeurs. Par exemple:

    Alice

    • âge:9

    • jeu:cartes

    • sport:course

    • instrument:piano

Exercice 4#

Un site de vente en ligne propose des articles de bricolage à la vente. Pour chaque article, celui-ci a:

  • une référence sous forme de chaine alpha-numérique;

  • une désignation sous forme de chaine de caractères;

  • un prix sous forme de nombre

On donne ci-dessous un exemple d’articles que l’on peut trouver sur le site:

ref

désignation

prix (€)

P21

perceuse

99.50

M07

meuleuse

45.00

V33

visseuse sans fil

69.90

  1. Écrire la classe Article et son constructeur permettant de créer des objets pour les outils de bricolage.

  2. Créer les trois objets du site présents dans le tableau ci-dessus.

  3. La méthode modifier_prix permet de modifier le prix d’un article en y appliquant un pourcentage d’augmentation ou de réduction. Cette méthode prend en argument un pourcentage sous forme de nombre entier à appliquer et renvoie le prix modifié de l’article.

    1. Écrire en Python la méthode modifier_prix.

    2. Appliquer une réduction de 10% sur le premier article et une augmentation de 20% sur le second.

    Note

    • Un prix augmenté de t% est un prix multiplié par \(1+\frac{t}{100}\).

    • Un prix réduit de t% est un prix multiplié par \(1-\frac{t}{100}\).