Sempahore

lafa73 -  
spoophy Messages postés 355 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
lorsque une fille entre dans la douche , une autre fille peut y rentrer mais pas un garcon et la meme chose pour les garcons, une glissiere indique vide, occupe par les fille, occuper par les garcons
ecrire un algorithme avec des sempahores faire des code des fonctions suivants fille-veut-entrer, garcon-veut-entrer, fille-sort, garcon-sort ensuite en utilisant ces 4 fonctions faire le code filles et garcons

voici ma reponse que j ai faite

fille-veut-entrer ()
p(mutex)
p(fille)
repeter
entrer-fille()
finrepeter
V(mutex)
v(fille)

9 réponses

fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Salut,
Les sémaphores doivent être binaires ou pas forcément dans ton exercice ?
Cdt
1
Yuku Messages postés 199 Date d'inscription   Statut Membre Dernière intervention   4
 
Ah oui avec un truc genre

Bool Semaphore
Si Semaphore := 0
Semaphore_Allume;
Sinon Si Semaphore := 1
Semaphore_Eteint;
Fin Si
Fin Si



?
1
lafa73 Messages postés 39 Date d'inscription   Statut Membre Dernière intervention   1
 
rebonjour tout lemonde
voici une proposition y as t il quelqu un qui pourrait m aider

entrer_fille()
debut
p(entrer_fille)
compt = compt +1
si compt = 1 alors
p(glissiere)
glissiere = "occupe"
fsi
v(glissiere)
v(entrer_fille)
fin
j attend vos remarque a plus
0
kaso
 
Bonjour,

J'ai exactement le même exercice et je bloque complètement. Est ce que tu as réussi à avoir une solution depuis? Si oui, je serai intéressée.

Merci d'avance.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
spoophy Messages postés 355 Date d'inscription   Statut Membre Dernière intervention   41
 
et bien de nos jours on donne des exo sur les semaphores de plus en plus interessant si sa revené a moi je le ferer faux exprès
0
Yuku Messages postés 199 Date d'inscription   Statut Membre Dernière intervention   4
 
Si j'ai bien compris il faut créer 4 fonctions et les assigner à la fonction principale ?
-1
Yuku Messages postés 199 Date d'inscription   Statut Membre Dernière intervention   4
 
Perso je ferais ça ...

Algorithme Douche(personne, personne2)

Début

Tant que personne != 'F' OU personne != 'G' faire

Ecrire("Qui est dans la douche? (F : fille, G : garçon)");
Lire(Personne);

Fin Tant que

Tant que personne2 != 'F' OU personne2 != 'G' faire

Ecrire("Qui d'autre veut rentrer? (F : fille, G : garçon)");
Lire(Personne2);

Fin Tant que

Si (personne := 'F') alors
Ecrire("Occupé par les filles");
Si (personne2 := 'F') alors
Ecrire("L'autre fille peut rentrer");
Fin Si

Sinon Si (personne2 := 'G') alors
Ecrire("Le garçon ne peut pas rentrer");
Fin Si
Fin Si

Si (personne := 'G') alors
Ecrire("Occupé par les garçons");
Si (personne2 := 'G') alors
Ecrire("L'autre garçon peut rentrer");
Fin Si

Sinon Si (personne2 := 'F') alors
Ecrire("La fille ne peut pas rentrer");
Fin Si
Fin Si


Fin Douche
-1
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Oui, sauf qu'il veut avec des sémaphores ^^.
-1
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
C'est déjà mieux.
En fait c'est juste avec des P() et des V() comme dans son exemple.
Mais, je me demande s'il doit utiliser des sémaphores binaires ou pas forcément.
-1
lafa73 Messages postés 39 Date d'inscription   Statut Membre Dernière intervention   1
 
non pas necessairement des semaphore binaire , juste les p() et v() je vous remercie
-1