Skip to content

Instantly share code, notes, and snippets.

@martync
Last active February 3, 2020 08:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save martync/eaf0f93a749a271a954b7289174e7ab2 to your computer and use it in GitHub Desktop.
Save martync/eaf0f93a749a271a954b7289174e7ab2 to your computer and use it in GitHub Desktop.
Classes - véhicules

Creer les classes suivantes :

  • Voiture
  • Camion
  • Scooter

Chaque véhicule devra définir une vitesse maximum et une capacité d'essence maximum :

  • Voiture : 130 kmh / 50L
  • Camion : 90 kmh / 100L
  • Scooter : 50 kmh / 5L

Scenario : A la création d'un nouveau véhicule, le réservoire est plein et l'état du véhicule est "éteint". Pour chacun des véhicules :

  • Démarrer le véhicule avec la méthode "start", l'état passe à "allumé"
  • Accélérer avec la méthode "accelerate" qui prend en paramètre la vitesse et la distance. Si l'état est "allumé", alors la consommation d'essence (en litres) est définie ainsi : vitesse * distance / 100. Après une accélération, la quantité d'essence du véhicule doit diminuer. Si la quantité d'essence restante est nulle, le véhicule s'éteint.
  • Eteindre : l'état passe à "éteint"

Contrainte : Après le démarrage d'un camion, il devra consommer 5L de carburant. Vous devrez utiliser les concepts d'héritage, de polymorphisme, d'attributs de classe et d'objet et des méthodes.

Pour la simplicité de la structure, le code devra être écrit dans un seul fichier. En haut du fichier seront placées vos définitions de classes, en bas elles seront utilisées selon le scénario.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment