Le sujet

Transcription

Le sujet
Programmation parallèle
IUP ISI
Mars 2009 – durée : 1h15
Université Paul Sabatier
Procédure de vote
On souhaite implémenter un processus de vote constitué de plusieurs bureaux. Pour cela on propose 3 types de processus : votant, bureau et comptage.
Il y a NB BUREAUX processus bureaux. Pour chaque bureau il y a un certain nombre de votant :
le bureau numéro i aura NB VOTANTS[i] votants (par exemple 4∗i). La procédure de vote se déroule
en parallèle (tous les bureaux sont ouverts simultanément) de la manière suivante :
– Les votants doivent choisir entre CANDIDAT A et CANDIDAT B,
– Chaque votant transmet son bulletin à son bureau et attend confirmation que celui-ci a bien
été pris en compte.
– Chaque bureau reste ouvert TEMPS DE VOTE secondes. Durant cette période il recoit les bulletins
des votants et fait le compte des votes en faveur de chaque candidat. Pour chaque bulletin recu,
bureau signale à votant que son vote a bien été pris en compte. Lorsque tous les votants ont
voté ou que le temps est écoulé, bureau transmet le compte des votes pour chaque candidat à
comptage.
– Lorsque comptage a reçu le décompte de chaque bureau, il fait le total et annonce le résultat
sur la sortie standard.
Travail à réaliser
– faire un schéma de communication
– écrire les processus votant, bureau et comptage,
– écrire une fontion main et tester le programme.
1