OSII Liste Fonctionnalité PDV dev - dudleydehenau/Ephec GitHub Wiki


Étapes de Développement : Gestion d'un Championnat de Formule 1 en C

Partie 1 : Gestion des Séances (P1, P2, P3, Q1, Q2, Q3)

  1. Génération Aléatoire des Temps :

    • Implémentez des fonctions en C pour générer aléatoirement les temps dans les trois secteurs pour chaque voiture.
  2. Suivi en Temps Réel :

    • Utilisez des variables pour suivre en temps réel le meilleur temps dans chaque secteur et le meilleur tour complet pendant les séances.
  3. Classement des Voitures :

    • Triez les voitures selon leur meilleur tour complet en utilisant des algorithmes de tri tels que le tri à bulles ou le tri rapide.
  4. Affichage des Différences de Temps :

    • Calculez la différence de temps entre les voitures en utilisant les temps enregistrés et affichez ces valeurs.
  5. Détection des Voitures aux Stands ou Hors Course :

    • Utilisez des variables pour détecter si les voitures sont aux stands ou hors course. Conservez leur meilleur temps si nécessaire.
  6. Enregistrement sur Fichier :

    • Utilisez des opérations d'écriture de fichiers en C pour enregistrer le classement final dans un fichier, ainsi que les meilleurs temps S1, S2, S3 et du meilleur tour.

Partie 2 : Gestion des Courses (Sprint et Dimanche)

  1. Maintien de l'Ordre de Départ :

    • Utilisez une structure de données telle qu'un tableau pour maintenir l'ordre de départ. Mettez à jour cet ordre lorsqu'un dépassement se produit.
  2. Suivi en Temps Réel pendant la Course :

    • Utilisez des variables similaires à celles des séances pour suivre le meilleur temps dans chaque secteur et le meilleur tour complet pendant la course.
  3. Gestion des Arrêts aux Stands :

    • Utilisez des variables pour suivre les arrêts aux stands et calculez le temps passé en fonction du nombre d'arrêts.
  4. Enregistrement sur Fichier :

    • Utilisez des opérations d'écriture de fichiers pour enregistrer le classement final dans un fichier, ainsi que les meilleurs temps S1, S2, S3 et du meilleur tour.
  5. Attribution de Points aux Pilotes :

    • Utilisez des conditions pour attribuer des points aux pilotes en fonction de leur classement à la fin de la course.

Partie 3 : Paramétrage du Programme

  1. Adaptabilité aux Formats de Week-ends de Course :

    • Utilisez des variables ou des configurations pour rendre le programme adaptable à différents formats de week-ends de course.
  2. Calcul Automatique du Nombre de Tours :

    • Utilisez des formules mathématiques pour calculer automatiquement le nombre de tours en fonction de la longueur du circuit. (Longeur du circuit entrrée en paramètre)
  3. Synchronisation des Processus :

    • Assurez-vous d'utiliser des mécanismes de synchronisation tels que les sémaphores ou les mutex pour synchroniser les différentes parties du programme, en particulier lors de l'accès aux données partagées.