TD d'Informatique

 TD 5 - Python

Les classes

EXO 1

Définissez une classe Satellite() qui permette d'instancier des objets simulant des satellites artificiels lancés dans l'espace, autour de la terre.
Le constructeur de cette classe initialisera les attributs d'instance suivants, avec les valeurs par défaut indiquées :
masse = 100,  vitesse = 0.

Lorsque l'on instanciera un nouvel objet Satellite(), on pourra choisir son nom, sa masse et sa vitesse.

Les méthodes suivantes seront définies :

- impulsion(force, duree)
permettra de changer la vitesse du satellite. Pour calculer cette nouvelle vitesse: force (en newton) * durer (en secondes) / masse + ancienne vitesse

- affiche_vitesse()
affichera le nom du satellite et sa vitesse courante.

- energie()
renverra au programme appelant la valeur de l'énergie cinétique du satellite.
l'énergie cinétique se calcule à l'aide de la formule 0.5*m*v**2

Exemples d'utilisation de cette classe :

    >>> s1 = Satellite('Zoé', masse =250, vitesse =10)
    >>> s1.impulsion(500, 15)
    >>> s1.affiche_vitesse()
    vitesse du satellite Zoé = 40 m/s.
    >>> print s1.energie()
    200000
    >>> s1.impulsion(500, 15)
    >>> s1.affiche_vitesse()
    vitesse du satellite Zoé = 70 m/s.
    >>> print s1.energie()
    612500


EXO 2

Définissez une classe Cercle(). Les objets construits à partir de cette classe seront des cercles de tailles variées. En plus de la méthode constructeur (qui utilisera donc un paramètre rayon), vous définirez une méthode surface(), qui devra renvoyer la surface du cercle.

Définissez ensuite une classe Cylindre() dérivée de la précédente. Le constructeur de cette nouvelle classe comportera les deux paramètres rayon et hauteur. Vous y ajouterez une méthode volume() qui devra renvoyer le volume du cylindre.
(Rappel : Volume d'un cylindre = surface de section x hauteur).

Exemple d'utilisation de cette classe :

>>> cyl = Cylindre(5, 7)
>>> print cyl.surface()
78.54
>>> print cyl.volume()
549.78