Aiuto esercitazione scolastica

di il
1 risposte

Aiuto esercitazione scolastica

A scuola ci hanno dato come compito da consegnare entro la fine dell'anno un programma che gestisca 4 sportelli (es. posta, banca, supermercato) e che indirizzi le persone verso gli sportelli liberi. Gli sportelli possono assumere 3 stati: libero, occupato e fuori servizio. Il programma deve essere testato con una simulazione e poi modificato per testarlo con arduino. Il problema del mio codice è che non cambia lo stato degli sportelli una volta diminuita la coda
#include <stdio.h>
#define LIBERO		0
#define OCCUPATO	1
#define FS			2
main()
{
	int stato_sportello[4] = {0};
	int coda = 0; 
	int evento = 0;
	
	while(1)
	{
		//stampa istruzioni su schermo
		printf ("inserisci evento \n");
		// Rilevazione evento
		scanf("%d", &evento);
		
		switch (evento)
		{
			//Variazione stato sportello libero/occupato
			case 1:
				if (stato_sportello[0] == LIBERO && coda > 0 )
				{
					coda--;
					stato_sportello[0] == OCCUPATO;
		
				}
				else if (stato_sportello[0] == OCCUPATO)
				{
			      stato_sportello[0] == LIBERO;
				}
				break;
			//variazione stato sportello fuori servizio/in servizio
			case 2:
				if (stato_sportello[0] ==LIBERO)
				{
					stato_sportello[0] == FS;
				}
				else if (stato_sportello[0] == FS)
				{
					stato_sportello[0] == LIBERO;
			
				}
				break;
qualche idea su cosa c'è di sbagliato?

1 Risposte

Devi accedere o registrarti per scrivere nel forum
1 risposte