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

Pascal Discussion :

Simuler une procédure d'actions se passant dans un salon de coiffure


Sujet :

Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 67
    Par défaut Simuler une procédure d'actions se passant dans un salon de coiffure
    Bonjour,
    je suis en train de développer un programme de simulation de coiffure, et je ne sais pas comment je commence.
    Merci bien de m'aider.
    Utilisant les listes ou les tableaux.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    clients -------> coiffeur.
     
    - chaque client a : 
           temps_arrivee
           temps_depart
    - calculer le nombre des clients.
    - n_max: le nombre des clients.
    - q_max: nombre des clients en attente.
    - taux_chomage : le temps où le coiffeur pose ou n''a aucun client.
    merci d'avance.

  2. #2
    Membre Expert
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Par défaut
    Bonjour
    Ce que tu dis n'est pas du tout clair, tu as un ennoncé plus précis et si possible un code qui va avec dans lequel tu bloques?

    Cordialement

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 67
    Par défaut
    -Un salon de coiffure
    -Un thread coiffeur (chaise de coiffure).
    -Des threads clients (chaises pour les clients).
    -Salle d’attente avec N chaises
    -Client attend, si pas possible repart
    -Si personne, le coiffeur s’endort.

    Le but de ce programe est d’associer une thread au coiffeur ainsi qu’a chaque client et de programmer une seance de coiffeur dormeur, et d’utiliser les semaphores pour garantir l’exclusion mutuelle parmi les processus.

    * Un coiffeur possede un salon avec un siege de coiffeur et une salle d’attente comportant un nombre fixe F defauteuils.

    * S’il n’y a pas de client, le coiffeur se repose sur son siege de coiffeur.
    * Quand un client arrive:
    - s’il trouve le coiffeur endormi, il le reveille,s’assoit sur le siege de coiffeur et attend la fin de sa coupe de cheveux.
    - si le coiffeur est occupé lors que le client arrive, le client s’assoit et s’endort sur une des C chaises de la salle d’attente.
    - si le coiffeur est occupé lorsque le client arrive et la salle d’attente est pleine, le client repasse plus tard.

    * Lorsque le coiffeur a terminé une coupe de cheveux, il fait sortir son client courant et va reveiller un des clients de la salle d’attente.

    * Si la salle d’attente est vide, le coiffeur se rendort sur son siege jusqu’à ce qu’un nouveau client arrive.

    Scenario pour le coiffeur

    Le processus coiffeur :
    La zone d’embarquement d’un arrêt de bus offre MAX places.
    - sert le premier client de la file, s'il y en a un (sinon il se bloque),
    Un usager qui arrive après le bus doit attendre le bus suivant.
    - décrémente Attend (accès exclusif) ,
    Comment se fait l’embarquement :
    - libère le siège du client (l'invite à s'asseoir)
    - à l’arrivée du bus, les usagers déjà présents essaient de monter à bord. (Ceux qui se
    - Coiffe

    Scenario pour un client
    Ce que fait un client :
    - Si le nombre de clients en attente est supérieur à N, sort
    - décrémente Attend (accès exclusif)
    - s'ajoute à la file d'attente
    - attend de pouvoir s'asseoir dans le siège du coiffeur
    - se fait coiffer et sort.

    Clients = 0
    Mutex = 1
    Coiffeurs = 0
    Attente = 0

    Coiffeur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    While(1){ 
      P(Clients) 
      P(Mutex) 
      Attente = attente – 1   
      V(Coiffeurs) 
      V(Mutex) 
      Couper_cheveux 
    }
    Client

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    P(Mutex) 
    If (Attente < Chaises) { 
      Attente = attente + 1 
      V(Clients) 
      V(Mutex) 
      P(Coiffeurs) 
      Obtenir_coupe  
    } 
    Else { 
      V(Mutex) 
    }

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 67
    Par défaut
    Citation Envoyé par krachik Voir le message
    Bonjour
    Ce que tu dis n'est pas du tout clair, tu as un ennoncé plus précis et si possible un code qui va avec dans lequel tu bloques?

    Cordialement
    Bonjour, j'attend ton aide

Discussions similaires

  1. Réponses: 7
    Dernier message: 28/10/2010, 21h55
  2. Réponses: 3
    Dernier message: 27/10/2010, 16h47
  3. [AC-2000] Déclarer une procédure en tant que variable dans une procédure globale
    Par kir4000 dans le forum VBA Access
    Réponses: 1
    Dernier message: 04/08/2009, 16h52
  4. Réponses: 2
    Dernier message: 28/05/2006, 23h31

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