Posez votre question Signaler

Sempahore

lafa73 - Dernière réponse le 31 déc. 2008 à 01:27
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)
Lire la suite 

Sempahore »

Suggestions
10 réponses
Réponse
+1
moins plus
Salut,
Les sémaphores doivent être binaires ou pas forcément dans ton exercice ?
Cdt
Ajouter un commentaire
Réponse
+1
moins plus
Ah oui avec un truc genre

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



?
Ajouter un commentaire
Réponse
+0
moins plus
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
Ajouter un commentaire
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
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
Ajouter un commentaire
Réponse
-1
moins plus
Si j'ai bien compris il faut créer 4 fonctions et les assigner à la fonction principale ?
Ajouter un commentaire
Réponse
-1
moins plus
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
fiddy - 15 oct. 2008 à 18:38
Oui, sauf qu'il veut avec des sémaphores ^^.
Ajouter un commentaire
Réponse
-1
moins plus
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.
Ajouter un commentaire
Réponse
-1
moins plus
non pas necessairement des semaphore binaire , juste les p() et v() je vous remercie
Ajouter un commentaire
Ce document intitulé « sempahore » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook