namespace ripasso2; class Program { static void Main(string[] args) { //dichiarazione e inizializzazione variabili int nElementiVentiDue = 0, nElementiDieci = 0; double prezzo, prezzoTotArticoliIvaVentiDue = 0, prezzoTotArticoliIvaDieci = 0, totArticoliIvaDieci, totArticoliIvaVentiDue, valoreTassaIvaDieci; double valoreTassaIvaVentiDue, spedizioneArticoliIvaDieci, spedizioneArticoliIvaVentiDue, assicurazioneIvaDieci, assicurazioneIvaVentiDue; double spedizioneTotaleIvaDieci, spedizioneTotaleIvaVentiDue, totaleNoSpedizione, totaleConSpedizione; string scelta; const int ivaDieci = 10; const int ivaVentiDue = 22; const int spedizione = 10; const double assicurazione = 0.02; do { //inserimento prezzo do { Console.Write("Inserire il prezzo dell'articolo: "); prezzo = Convert.ToDouble(Console.ReadLine()); if (prezzo <= 0) { Console.WriteLine("Il prezzo non può essere zero o inferiore"); } } while (prezzo <= 0); //decisione imposta da applicare do { Console.Write("Applicare l'imposta del 22% o del 10%? "); scelta = Console.ReadLine(); switch (scelta) { case "10": //(Convert.ToString(ivaDieci)) non era valido prezzoTotArticoliIvaDieci = prezzoTotArticoliIvaDieci + prezzo; nElementiDieci++; break; case "22": //(Convert.ToString(ivaVentiDue)) non era valido prezzoTotArticoliIvaVentiDue = prezzoTotArticoliIvaVentiDue + prezzo; nElementiVentiDue++; break; default: Console.WriteLine("Scelta non valida, inserire [10] o [22]"); break; } } while (scelta != Convert.ToString(ivaDieci) && scelta != Convert.ToString(ivaVentiDue)); //scelta di continuare do { Console.WriteLine("Continuare? [S/N] "); scelta = Console.ReadLine(); if (scelta != "N" && scelta != "S") { Console.WriteLine("Opzione non valida"); } } while (scelta != "N" && scelta != "S"); } while (scelta == "S"); //scelta di spedire do { Console.Write("Spedire? [S/N] "); scelta = Console.ReadLine(); if (scelta != "N" && scelta != "S") { Console.WriteLine("Opzione non valida"); } } while (scelta != "N" && scelta != "S"); //calcoli totArticoliIvaDieci = prezzoTotArticoliIvaDieci + prezzoTotArticoliIvaDieci * ivaDieci / 100; totArticoliIvaVentiDue = prezzoTotArticoliIvaVentiDue + prezzoTotArticoliIvaVentiDue * ivaVentiDue / 100; valoreTassaIvaDieci = prezzoTotArticoliIvaDieci * ivaDieci / 100; valoreTassaIvaVentiDue = prezzoTotArticoliIvaVentiDue * ivaVentiDue / 100; spedizioneArticoliIvaDieci = spedizione * nElementiDieci; spedizioneArticoliIvaVentiDue = spedizione * nElementiVentiDue; assicurazioneIvaDieci = prezzoTotArticoliIvaDieci * assicurazione; assicurazioneIvaVentiDue = prezzoTotArticoliIvaVentiDue * assicurazione; spedizioneTotaleIvaDieci = spedizioneArticoliIvaDieci + assicurazioneIvaDieci; spedizioneTotaleIvaVentiDue = spedizioneArticoliIvaVentiDue + assicurazioneIvaVentiDue; totaleNoSpedizione = totArticoliIvaDieci + totArticoliIvaVentiDue; totaleConSpedizione = totaleNoSpedizione + spedizioneTotaleIvaDieci + spedizioneTotaleIvaVentiDue; //risultati Console.WriteLine("Totale prodotti con IVA 10%: " + totArticoliIvaDieci); Console.WriteLine("Totale prodotti con IVA 22%: " + totArticoliIvaVentiDue); Console.WriteLine("Totale IVA 10%: " + valoreTassaIvaDieci); Console.WriteLine("Totale IVA 22%: " + valoreTassaIvaVentiDue); if (scelta == "S") { Console.WriteLine("Spedizione prodotti con IVA 10%: " + spedizioneArticoliIvaDieci); Console.WriteLine("Spedizione prodotti con IVA 22%: " + spedizioneArticoliIvaVentiDue); Console.WriteLine("Assicurazione prodotti con IVA 10%: " + assicurazioneIvaDieci); Console.WriteLine("Assicurazione prodotti con IVA 22%: " + assicurazioneIvaVentiDue); Console.WriteLine("Totale spedizione prodotti con IVA 10%: " + spedizioneTotaleIvaDieci); Console.WriteLine("Totale spedizione prodotti con IVA 22%: " + spedizioneTotaleIvaVentiDue); Console.WriteLine("Totale complessivo: " + totaleConSpedizione); } else { Console.WriteLine("Totale complessivo: " + totaleNoSpedizione); } } }