IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

simulation course automobile c++


Sujet :

C++

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 8
    Points : 5
    Points
    5
    Par défaut simulation course automobile c++
    Bonjour,
    Je souhaite programmer une simulation de course automobile en c++ avec 2 classes (voitures et obstacle).

    *De la classe voiture doivent dériver les voitures suivantes :
    la F2007 avec : score de vitesse=10, maniabilité=4, accélération=2 et résistance=10

    la R27 avec : vitesse_initiale=15, maniabilité=4,accélération=2, résistance=14

    la MP4/21 avec: vitesse_initiale=12, maniabilité=3,accélération=3, résistance=9

    *De la classe obstacle doivent dériver :
    flaque d'huile : la voiture perd 2 point de maniabilité
    virage sérré : la voiture perd 3 points de vitesse
    pneu crevé: la voiture perd 3 points de résistance et 3 de vitesse

    *Le programme doit etre lancé simul doit etre lancé de la facon suivante :
    $simul nom_voiture1 nom_voiture2 taille_de_la_piste
    (ex: $simul R27 F2007 15)

    *Deroulement de la simulation:
    1- Chaque voiture à son tour doit recevoir un obstacle tiré aléatoirement

    2- L'effet de l'obstacle est déterminé et appliquer à la voiture

    3- La vitesse de la voiture augmente de son score d'accélération

    4- Une fois que la voiture a accéléré, on ajoute son score de vitesse actuelle à son score de position pour déterminer sa position dans la course.

    5- On réitère les mêmes opérations pour la seconde voiture avec un obstacle tiré aléatoirement. Quand les 2 voitures ont reçu leur obstacle, on décrémente le score taille_de_la_piste, et on recommence sauf si l'une des voitures n'est plus capable de continuer (score de résistance inférieur ou égal 0). Si le score taille_de_la_piste devient nul, la course s'arrête et la voiture qui a le plus grand score de position a gagné la course. Si une voiture est détruite, l'autre voiture gagne. Si les 2 voitures sont détruites en même temps ou si elles ont le meme score de position, il y a égalité.

    J'aurais également souhaité écrire à chaque tour dans un fichier RESULTS.TXT l'état de la voiture, l'obstacle qu'elle a reçu et son effet, enfin le nom de la voiture victorieuse.

    Pourriez vous m'aider svp? merci d'avance

  2. #2
    Membre expert

    Avatar de IrmatDen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 727
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 727
    Points : 3 266
    Points
    3 266
    Par défaut
    Oui, mais quel est le problème??

  3. #3
    Membre éclairé
    Avatar de buzzkaido
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2004
    Messages
    821
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2004
    Messages : 821
    Points : 734
    Points
    734
    Par défaut
    Le cahier des charges de ton programme est bien posé.

    Il ne reste plus qu'à le coder !

  4. #4
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Points : 16 213
    Points
    16 213
    Par défaut
    Citation Envoyé par dr971
    *De la classe voiture doivent dériver les voitures suivantes :
    la F2007 avec : score de vitesse=10, maniabilité=4, accélération=2 et résistance=10

    la R27 avec : vitesse_initiale=15, maniabilité=4,accélération=2, résistance=14

    la MP4/21 avec: vitesse_initiale=12, maniabilité=3,accélération=3, résistance=9
    La dérivation doit servir à coder des comportements différents. Ici, tu n'as a priori besoin que d'une classe voiture, avec des données membre ayant des valeurs différentes. Pas besoin de se compliquer la vie pour ça.

    Idem pour tes autres hiérarchies.
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

  5. #5
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 614
    Points : 30 626
    Points
    30 626
    Par défaut
    Salut,

    Je trouverais juste intéressant de rajouter une classe supplémentaire: piste qui serait en mesure de gérer les voitures en course, et les obstacles...

    Elle disposerait évidemment d'un membre "taille de la piste" et ce serait, finalement, la classe qui chapeaute l'intégralité du déroulement de la course
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  6. #6
    Membre actif Avatar de femtosa
    Inscrit en
    Juin 2002
    Messages
    253
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 253
    Points : 222
    Points
    222
    Par défaut
    Je pense que c'est une bonne piste pour démarrer

    Ok ...

    "L'expérience est le seul livre que les imbéciles savent lire ... !"

    Qui à dit cela ? Moi je n'sais pas !
    Mais en tout cas, je l'applique au pas !

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    ben en fait je suis completement bloqué j'arrive même pas à démarer (je suis débutant en c++). quelqu'un pourrait m'aider??? merci d'avance

Discussions similaires

  1. Probleme Voyageur de Commerce - Recuit Simulé
    Par dinver dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 21/06/2009, 22h26
  2. Développpement d'une application de simulation .....
    Par dada5455 dans le forum OpenGL
    Réponses: 6
    Dernier message: 14/12/2003, 10h27
  3. simuler l'execution d'un message
    Par gaut dans le forum C
    Réponses: 14
    Dernier message: 24/07/2003, 23h01
  4. Simuler un coup de molette sur un memo...
    Par dynobremo dans le forum Composants VCL
    Réponses: 2
    Dernier message: 28/02/2003, 11h31
  5. Simulation de transmission de paquet entre différent réseaux
    Par MelloW dans le forum Développement
    Réponses: 2
    Dernier message: 12/07/2002, 19h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo