static void Main(string[] args) { // Creazione di una banca Banca DB = new Banca("Deutsche Bank", "viale Principe Amedeo"); // Creazione del primo intestatario e del suo relativo conto corrente (tradizionale) Intestatario A = new Intestatario("Mario", "Rossi", new DateTime(1990, 06, 19), "weudu8763", "via Roma", "3874636784"); ContoCorrente AC = new ContoCorrente("IT00000001", 5000); // Aggiungiamo il conto alla lista di conti DB.AddConto(AC); // Stampa info intestatario e del relativo conto Console.WriteLine("Intestatario: " + A.getNome() + " " + A.getCognome() + "\nData di nascita: " + A.getDataNascita() + "\nAbita in via: " + A.getIndirizzo() + "\nNumero di telefono: " + A.getTelefono()); Console.WriteLine("Stampa del saldo di " + A.getNome() + " " + A.getCognome() + ": " + AC.getSaldo()); // Vengono effettuati un versamento e un prelievo con la relativa stampa aggiornata AC.AddMovimenti(new Versamento(100, new DateTime(2020, 03, 19), AC, null)); AC.AddMovimenti(new Prelievo(300, new DateTime(2020, 04, 10), AC, null)); Console.WriteLine("MOVIMENTI:"); foreach (Movimento movimento in AC.getMovimenti()) { movimento.Sommare(); Console.Write(movimento.getImporto() + " euro" + " fatto nel: " + movimento.getDataOra() + " - saldo attuale: " + AC.getSaldo() + "\n"); } Console.WriteLine("__________________________________________________________________________________________________\n"); // Creazione del secondo intestatario Intestatario B = new Intestatario("Luigi", "Verdi", new DateTime(1990, 04, 26), "asdaf5678", "via Roma", "3981848734"); // Creazione del suo conto corrente (tradizionale) ContoCorrente BC = new ContoCorrente("IT00000002", 2500); // Aggiunta del conto corrente alla lista di conti DB.AddConto(BC); // Stampa delle info del proprietario e del relativo conto Console.WriteLine("Intestatario: " + B.getNome() + " " + B.getCognome() + "\nData di nascita: " + B.getDataNascita() + "\nAbita in via: " + B.getIndirizzo() + "\nNumero di telefono: " + B.getTelefono()); Console.WriteLine("Stampa del saldo di " + B.getNome() + " " + B.getCognome() + ": " + BC.getSaldo()); // Vengono effettutati dei movimenti di prova come il versamento, il prelievo e il bonifico BC.AddMovimenti(new Versamento(300, new DateTime(2020, 05, 30), BC, null)); BC.AddMovimenti(new Prelievo(100, new DateTime(2020, 07, 21), BC, null)); BC.AddMovimenti(new Bonifico(AC, 50, -200, new DateTime(2020, 06, 06), BC, null)); // Stampa dei movimenti effettuati Console.WriteLine("MOVIMENTI:"); foreach (Movimento movimento in BC.getMovimenti()) { movimento.Sommare(); Console.Write(movimento.getImporto() + " euro " + "fatto nel: " + movimento.getDataOra() + " - saldo attuale: " + BC.getSaldo() + "\n"); } Console.WriteLine("__________________________________________________________________________________________________\n"); //Creazione di un nuovo intestatario online e del suo relativo conto online, aggiungendolo alla lista dei conti Intestatario C = new Intestatario("Antonio", "Peroni", new DateTime(1968, 09, 09), "udhwoiud83", "via Lazio", "38648374683"); ContoOnline CC = new ContoOnline("Anto384", "vero4666", "IT00000003", 10000); DB.AddConto(CC); Console.WriteLine("Intestatario: " + C.getNome() + " " + C.getCognome() + "\nData di nascita: " + C.getDataNascita() + "\nAbita in via: " + C.getIndirizzo() + "\nNumero di telefono: " + C.getTelefono()); Console.WriteLine("Stampa del saldo di " + C.getNome() + " " + C.getCognome() + ": " + CC.getSaldo()); //Vengono effettuati dei movimenti, aggiunti poi alla lista dei movimenti CC.AddMovimenti(new Versamento(1000, new DateTime(2020, 01, 07), null, CC)); CC.AddMovimenti(new Prelievo(600, new DateTime(2020, 09, 25), null, CC)); // Stampa dei movimenti effettuati Console.WriteLine("MOVIMENTI:"); foreach (Movimento movimento in CC.getMovimenti()) { movimento.SommareOnline(); Console.Write(movimento.getImporto() + " euro " + "fatto nel: " + movimento.getDataOra() + " - saldo: " + CC.getSaldo() + "\n"); } Console.WriteLine("__________________________________________________________________________________________________\n"); Console.ReadLine(); }
static void Main(string[] args) { Banca DB = new Banca("Deutsche Bank", "viale Principe Amedeo"); Console.WriteLine("Benvenuto alla Deutsche Bank. Crea un profilo per usufruire dei nostri servizi."); Console.WriteLine("Nome : "); string nome = Convert.ToString(Console.ReadLine()); Console.WriteLine("Cognome : "); string cognome = Convert.ToString(Console.ReadLine()); Console.WriteLine("Codice Fiscale : "); string codiceFiscale = Convert.ToString(Console.ReadLine()); Console.WriteLine("Indirizzo : "); string indirizzo = Convert.ToString(Console.ReadLine()); Console.WriteLine("Numero di Cellulare : "); string telefono = Convert.ToString(Console.ReadLine()); Intestatario A = new Intestatario(nome, cognome, codiceFiscale, indirizzo, telefono); Console.WriteLine("Buongiorno " + nome + " " + cognome + ". Inserisca i dati del suo conto."); Console.WriteLine("Iban :"); string iban = Convert.ToString(Console.ReadLine()); Console.WriteLine("Saldo :"); double saldo = Convert.ToDouble(Console.ReadLine()); ContoCorrente AC = new ContoCorrente(iban, saldo); double importo = 0; int minMov = 0; double tassa = 0.50; int maxMov = 50; int scelta; DateTime dataMov = DateTime.Today; DB.AddConto(AC); Console.WriteLine("Intestatario: " + A.getNome() + " " + A.getCognome() + "\nAbita in via: " + A.getIndirizzo() + "\nNumero di telefono: " + A.getTelefono()); Console.WriteLine("Stampa del saldo di " + A.getNome() + " " + A.getCognome() + ": " + AC.getSaldo()); Console.WriteLine("Benvenuto. Che cosa vuole fare?"); do { Console.WriteLine("1)Prelievo"); Console.WriteLine("2)Versamento"); Console.WriteLine("3)Bonifico"); Console.WriteLine("4)Stampa saldo del conto"); Console.WriteLine("5)Esci"); scelta = Convert.ToInt32(Console.ReadLine()); switch (scelta) { case 1: Console.WriteLine("Inserisci l'importo del prelievo(Deve essere minore del saldo)"); importo = Convert.ToDouble(Console.ReadLine()); if (minMov > maxMov) { importo = importo + tassa; } if (AC.getSaldo() > importo) { Prelievo P = new Prelievo(importo, dataMov, AC, null); AC.AddMovimenti(P); P.Sommare(AC); Console.WriteLine("Prelievo riuscito"); Console.WriteLine(" "); minMov++; } else { Console.WriteLine("Non è possibile effettuare un prelievo con importo maggiore al saldo"); Console.WriteLine(" "); } minMov++; break; case 2: Console.WriteLine("Inserisci l'importo del versamento"); importo = Convert.ToDouble(Console.ReadLine()); if (minMov > maxMov) { importo = importo + tassa; } Versamento V = new Versamento(importo, dataMov, AC, null); AC.AddMovimenti(V); V.Sommare(AC); minMov++; Console.WriteLine("Versamento riuscito"); Console.WriteLine(" "); break; case 3: Console.WriteLine("Inserisci l'Iban del destinatario"); string ibanTo = Convert.ToString(Console.ReadLine()); ContoCorrente AC2 = new ContoCorrente(ibanTo, 0); DB.AddConto(AC2); Console.WriteLine("Inserisci l'importo del bonifico"); importo = Convert.ToDouble(Console.ReadLine()); if (minMov > maxMov) { importo = importo + tassa; } if (AC.getSaldo() > importo) { Bonifico B = new Bonifico(AC, importo, dataMov, null, null); AC.AddMovimenti(B); B.EseguiBonifico(AC, AC2); Console.WriteLine("Bonifico riuscito"); Console.WriteLine(" "); minMov++; } else { Console.WriteLine("Non è possibile effettuare un bonifio con importo maggiore al saldo"); Console.WriteLine(" "); } break; case 4: Console.WriteLine("Saldo: " + AC.getSaldo()); Console.WriteLine(" "); break; default: Console.WriteLine("Inserisci una delle azioni elencate"); Console.WriteLine(" "); break; } } while (scelta != 5); Console.WriteLine("Grazie per aver usufruito dei nostri servizi, buona giornata"); Console.ReadLine(); }