Ciao a tutti, devo fare un programmino sulle ordinazioni di un ristorante.
Ciascuna prenotazione deve avere le seguenti informazioni:
1) numero del tavolo ( da 1 a 20 )
2) data (giorno, mese, anno)
3) insieme ( vettore ) delle portate
4) insieme ( vettore ) delle bevande
5) costo totale del pasto
Inoltre per ciascuna portata (quindi punto 3):
1) codice della portata ( da 1 a 200 )
2) numero di tale portata
3) costo della portata
Per ciascuna bevanda (punto 4)
1) codice della bevanda ( da 1 a 20 )
2) numero di tale bevanda
3) costo della bevanda
Ogni ordinazione può avere al massimo 20 portate diverse e 10 bevande diverse
Avevo pensato di realizzare una struct fatta in questo modo
codice:
struct ordinazione {
int num_tavolo;
int data;
int portata [1][3];
int bevanda [1][3];
}ord[max];
e per inserire gli ingressi, ho pensato di fare in questo modo, ma il dubbio resta soprattutto sull'assegnamento dei dati nella struct per via degli indici
codice:
for ( i = 0; i < max; i++ ) {
printf("Inserisci ordinazione\n");
printf("Inserisci data : \n");
scanf("%d", &dat)
ord[i].data = dat;
printf("Inserisci il numero del tavolo : \n");
scanf("%d", &tav);
if ( tav >=1 && tav <= 20 ) {
ord[i].num_tavolo = tav;
}else{
printf("Numero tavolo errato\n");
}
num_max = 0;
for ( j = 0; j < 3; j++ ) {
printf("Inserisci il codice della portata : \n");
scanf("%d", &cod_port);
if ( cod_port >= 1 && cod_port <= 200 ) {
ord[i].portata[i][j] = cod_port;
} else{
printf("Il codice della portata è errato\n");
}
printf("Inserisci il numero di portate ordinate : \n");
scanf("%d", &num_port);
num_max = num_max + num_port;
if ( num_max <= 20 ) {
ord[i].portata[i][j];
}........................................
Per effettuare l'assegnazione dei dati ai campi di un vettore multidimensionale il quale è a sua volta un membro di una struttura è possibile usare gli indici in questo modo ????
Grazie