25/06/11 18:15
Bladex
Salve raga ..seguo questo sito da un pò ma non ho mai postato nel forum perchè non ho ancora le conoscenze necessarie per aiutare qualcuno
Vi scrivo perchè devo consegnare a breve un programma che simuli una macchina di smaltimento rifiuti.
La macchina deve riciclare 5 tipi di prodotti, ognuno dei quali ha un nome (carta,vetro,ecc..), il codice ed il prezzo.L'utente imposta il budget iniziale ed a fine programma bisogna fare il resoconto dei prodotti riciclati.
Deve inoltre verificare che non si riciclino più di 20 prodotti per ogni tipo ed ad ogni riciclo bisogna verificare se è sufficiente il budget..
So che probabilmente per voi è alquanto "elementare" ma io sono ancora all'inizio..
L'ho svolto in questa maniera...e visto che lo devo consegnare volevo sapere da voi se è fatto bene in questo modo,se notate errori e se si poteva fare in modo alternativo o più efficiente di questo..insomma secondo voi l'ho fatto bene?
Credo giri bene e rispetti tutte le condizioni ma non mi fido di me stesso quindi qualsiasi suggerimento è ben accetto!
Vi scrivo perchè devo consegnare a breve un programma che simuli una macchina di smaltimento rifiuti.
La macchina deve riciclare 5 tipi di prodotti, ognuno dei quali ha un nome (carta,vetro,ecc..), il codice ed il prezzo.L'utente imposta il budget iniziale ed a fine programma bisogna fare il resoconto dei prodotti riciclati.
Deve inoltre verificare che non si riciclino più di 20 prodotti per ogni tipo ed ad ogni riciclo bisogna verificare se è sufficiente il budget..
So che probabilmente per voi è alquanto "elementare" ma io sono ancora all'inizio..
L'ho svolto in questa maniera...e visto che lo devo consegnare volevo sapere da voi se è fatto bene in questo modo,se notate errori e se si poteva fare in modo alternativo o più efficiente di questo..insomma secondo voi l'ho fatto bene?
Credo giri bene e rispetti tutte le condizioni ma non mi fido di me stesso quindi qualsiasi suggerimento è ben accetto!
#include <stdio.h> int main () { int n,x,s=0,u=0,c=0,v=0,p=0,i=0; float budget; struct rifiuti { char nome[15]; char codice[5]; float prezzo; } secco={"Secco","01",30.0}, umido={"Umido","02",23.0}, carta={"Carta","03",19.0}, vetro={"Vetro","04",25.0}, plastica={"Plastica","05",35.0}; printf("Inserire il budget iniziale : "); scanf("%f",&budget); printf("Quanti prodotti intendi inserire nel corso della sessione di riciclo? : "); scanf("%d",&n); printf("Elenco dei prodotti che e' possibile riciclare : \n"); printf(" %s ",secco.codice); printf("%s",secco.nome); printf(" %1.f\n",secco.prezzo); printf(" %s ",umido.codice); printf("%s",umido.nome); printf(" %1.f\n",umido.prezzo); printf(" %s ",carta.codice); printf("%s",carta.nome); printf(" %1.f\n",carta.prezzo); printf(" %s ",vetro.codice); printf("%s",vetro.nome); printf(" %1.f\n",vetro.prezzo); printf(" %s ",plastica.codice); printf("%s",plastica.nome); printf(" %1.f\n",plastica.prezzo); for (i=0;i=n;i++) { printf("\nSelezionare il codice del prodotto da riciclare\n"); scanf("%d",&x); switch (x){ case 1: if (s<20 && budget>=secco.prezzo) { printf("Hai scelto di riciclare il secco,"); budget= budget-secco.prezzo; printf("ora hai a disposizione %f\n",budget); s++; printf("Sono stati inseriti %d prodotto/i di questo tipo\n",s); } else if (budget<secco.prezzo) printf("Budget insufficiente per questo prodotto\n"); else if (s>=20) printf("*** Hai inserito troppi prodotti di questo tipo (20) ***\npuoi inserire un altro tipo di prodotto.\n"); break; case 2: if (u<20 && budget>=umido.prezzo) { printf("Hai scelto di riciclare l'umido,"); budget= budget-umido.prezzo; printf("ora hai a disposizione %f\n",budget); u++; printf("Sono stati inseriti %d prodotto/i di questo tipo\n",u); } else if (budget<umido.prezzo) printf("Budget insufficiente per questo prodotto\n"); else if (u>=20) printf("*** Hai inserito troppi prodotti di questo tipo (20) ***\npuoi inserire un altro tipo di prodotto.\n"); break; case 3: if (c<20 && budget>=carta.prezzo) { printf("Hai scelto di riciclare la carta,"); budget= budget-carta.prezzo; printf("ora hai a disposizione %f\n",budget); c++; printf("Sono stati inseriti %d prodotto/i di questo tipo\n",c); } else if (budget<carta.prezzo) printf("Budget insufficiente per questo prodotto\n"); else if (c>=20) printf("*** Hai inserito troppi prodotti di questo tipo (20) ***\npuoi inserire un altro tipo di prodotto.\n"); break; case 4: if (v<20 && budget>=vetro.prezzo) { printf("Hai scelto di riciclare il vetro,"); budget= budget-vetro.prezzo; printf("ora hai a disposizione %f\n",budget); v++; printf("Sono stati inseriti %d prodotto/i di questo tipo\n",v); } else if (budget<vetro.prezzo) printf("Budget insufficiente per questo prodotto\n"); else if (v>=20) printf("*** Hai inserito troppi prodotti di questo tipo (20) ***\npuoi inserire un altro tipo di prodotto.\n"); break; case 5: if (p<20 && budget>=plastica.prezzo) { printf("Hai scelto di riciclare la plastica,"); budget= budget-plastica.prezzo; printf("ora hai a disposizione %f\n",budget); p++; printf("Sono stati inseriti %d prodotto/i di questo tipo\n",p); } else if (budget<plastica.prezzo) printf("Budget insufficiente per questo prodotto\n"); else if (p>=20) printf("*** Hai inserito troppi prodotti di questo tipo (20) ***\npuoi inserire un altro tipo di prodotto.\n"); break; default: printf("Hai sbagliato l'inserimento, riprova\n");} } printf("\n\n\n*** Sessione finita!..*** \n\nDei %d prodotti da riciclare sono stati riciclati:\n %d Secco, %d Umido, %d Carta, %d Vetro, %d Plastica\n\n",n,s,u,c,v,p); }
aaa