private static void TestProdottoOfferta() { DateTime today = new DateTime(2020, 11, 13); List<ProdottoInOfferta> lista_prodotti = new List<ProdottoInOfferta>(); for (int i = 0; i<1; i++) { Console.WriteLine("Inserisci la descrizione del prodotto, il prezzo, lo sconto e il codice divisi da spazio: "); string line = Console.ReadLine(); string[] res = line.Split(' '); Console.WriteLine("Inserisci giorno, mese e anno di inizio della promozione: "); string lineinizio = Console.ReadLine(); string[] resinizio = lineinizio.Split(' '); Console.WriteLine("Inserisci giorno, mese e anno di fine della promozione: "); string linefine = Console.ReadLine(); string[] resfine = linefine.Split(' '); int annoi, mesei, giornoi; int annof, mesef, giornof; annoi = Convert.ToInt32(resinizio[2]); mesei = Convert.ToInt32(resinizio[1]); giornoi = Convert.ToInt32(resinizio[0]); annof = Convert.ToInt32(resfine[2]); mesef = Convert.ToInt32(resfine[1]); giornof = Convert.ToInt32(resfine[0]); DateTime inizio = new DateTime(annoi,mesei,giornoi); DateTime fine = new DateTime(annof,mesef,giornof); if (res.Length > 4) { Console.WriteLine("TROPPI PARAMETRI"); } if (res.Length == 4) { string descrip = res[0]; double price = Convert.ToDouble(res[1]); double sconto = Convert.ToDouble(res[2]); int codice = Convert.ToInt32(res[3]); ProdottoInOfferta P_off = new ProdottoInOfferta(descrip, price, sconto, codice, inizio, fine); lista_prodotti.Add(P_off); } if (res.Length == 3) { string descrip = res[0]; double price = Convert.ToDouble(res[1]); double sconto = Convert.ToDouble(res[2]); ProdottoInOfferta P_off = new ProdottoInOfferta(descrip, price, sconto, inizio, fine); lista_prodotti.Add(P_off); } if (res.Length == 1) { string descrip = res[0]; ProdottoInOfferta P_off = new ProdottoInOfferta(descrip, inizio, fine); lista_prodotti.Add(P_off); } } foreach (ProdottoInOfferta p in lista_prodotti) { if (p.IsInOfferta()) { Console.WriteLine("IL PRODOTTO {0} è IN OFFERTA", p.Descrizione); } else { Console.WriteLine("IL PRODOTTO {0} NON è IN OFFERTA",p.Descrizione); } } }
private static void TestOfferte() { System.Console.WriteLine("Inserire 3 articoli disponibili (descrizione o descrizione-codice o descrizione-prezzo-sconto) e data di inizio e fine offerta nel formato dd/mm/aaaa"); List <ProdottoInOfferta> articoliinofferta = new List <ProdottoInOfferta>(); for (int i = 0; i < 3; i++) { string articolo = Console.ReadLine(); string[] res = articolo.Split(new char[] { ' ' }); if (res.Length == 3) { string[] inizio = res[1].Split(new char[] { '/' }); DateTime inizioofferta = new DateTime(Convert.ToInt32(inizio[2]), Convert.ToInt32(inizio[1]), Convert.ToInt32(inizio[0])); string[] fine = res[2].Split(new char[] { '/' }); DateTime fineofferta = new DateTime(Convert.ToInt32(fine[2]), Convert.ToInt32(fine[1]), Convert.ToInt32(fine[0])); ProdottoInOfferta nuovoarticolo = new ProdottoInOfferta(res[0], inizioofferta, fineofferta); articoliinofferta.Add(nuovoarticolo); } if (res.Length == 4) { string[] inizio = res[2].Split(new char[] { '/' }); DateTime inizioofferta = new DateTime(Convert.ToInt32(inizio[2]), Convert.ToInt32(inizio[1]), Convert.ToInt32(inizio[0])); string[] fine = res[3].Split(new char[] { '/' }); DateTime fineofferta = new DateTime(Convert.ToInt32(fine[2]), Convert.ToInt32(fine[1]), Convert.ToInt32(fine[0])); ProdottoInOfferta nuovoarticolo = new ProdottoInOfferta(res[0], Convert.ToInt32(res[1]), inizioofferta, fineofferta); articoliinofferta.Add(nuovoarticolo); } if (res.Length == 5) { string[] inizio = res[3].Split(new char[] { '/' }); DateTime inizioofferta = new DateTime(Convert.ToInt32(inizio[2]), Convert.ToInt32(inizio[1]), Convert.ToInt32(inizio[0])); string[] fine = res[4].Split(new char[] { '/' }); DateTime fineofferta = new DateTime(Convert.ToInt32(fine[2]), Convert.ToInt32(fine[1]), Convert.ToInt32(fine[0])); ProdottoInOfferta nuovoarticolo = new ProdottoInOfferta(res[0], Convert.ToDouble(res[1]), Convert.ToDouble(res[2]), inizioofferta, fineofferta); articoliinofferta.Add(nuovoarticolo); } } System.Console.WriteLine("Gli articoli in offerta sono: "); foreach (var item in articoliinofferta) { if (item.InizioOfferta < DateTime.Now && item.FineOfferta.AddDays(1) > DateTime.Now) { if (item.Codice != -1) { System.Console.WriteLine("Articolo: {0}, Codice: {1}", item.Descrizione, item.Codice); } if (item.Prezzo != 0) { Console.OutputEncoding = System.Text.Encoding.UTF8; System.Console.WriteLine("Articolo: {0}, Prezzo: {1:C}, Sconto: {2}%", item.Descrizione, item.Prezzo, item.Sconto); } if (item.Prezzo == 0 && item.Codice == -1) { System.Console.WriteLine("Articolo: {0}", item.Descrizione); } } } Console.ReadLine(); }