#include #include #include #include #include #include #define MAXP 50 #define MAXC 150 #define NBCLI 100 #define PRIXMAX 99 int caisse[4];//nombre de clients attendant à chaque caisse sem_t sem_portique, sem_acces_caisse, sem_caisse[4];//sémaphores utilisés dans la programmation float histo[MAXC][3]; struct Cli { int id; int chariot[MAXP]; }; typedef struct Cli Client; /*Ls trois fonctions suivantes permettent de simuler le comportement de la caissière Les fonctions sont adaptées à l'utilisation par un thread de type pthread_t*/ void* Moyenne (void* pdata) { double* somme=malloc(sizeof(double)); *somme=0; int* moyenne=(int*)pdata; for (int i=0; i