using System; using System.Collections.Generic; class BankasKonts { private static int nākamaisKontaNumurs = 1000; // statiskā mainīgā vērtība, lai nodrošinātu unikālus konta numurus private int kontaNumurs; private string īpašnieks; private decimal atlikums; // konstruktors, kas inicializē konta īpašnieku, sākuma atlikumu un automātiski piešķir unikālu konta numuru public BankasKonts(string īpašnieks, decimal sākumaAtlikums) { this.kontaNumurs = nākamaisKontaNumurs++; // Piešķir unikālu konta numuru un palielina nākamo numuru this.īpašnieks = īpašnieks; this.atlikums = sākumaAtlikums; } // destruktors, kas tiek izsaukts, kad objekts tiek iznīcināts ~BankasKonts() { Console.WriteLine($"Konts {kontaNumurs} tika iznīcināts."); } // metode naudas noguldīšanai kontā public void Noguldīt(decimal summa) { if (summa <= 0) { throw new ArgumentException("Noguldījuma summa jābūt lielāka par 0."); // izņēmums, ja summa ir nederīga } atlikums += summa; // palielina konta atlikumu Console.WriteLine($"Noguldīti {summa} EUR. Jaunais atlikums: {atlikums} EUR."); } // Metode naudas izņemšanai no konta public void Izņemt(decimal summa) { if (summa <= 0) { throw new ArgumentException("Izņemšanas summa jābūt lielāka par 0."); // izņēmums, ja summa ir nederīga } if (summa > atlikums) { throw new InvalidOperationException("Nepietiek līdzekļu kontā."); // izņēmums, ja kontā nav pietiekami daudz naudas } atlikums -= summa; // Samazina konta atlikumu Console.WriteLine($"Izņemti {summa} EUR. Jaunais atlikums: {atlikums} EUR."); } // metode konta informācijas parādīšanai public void ParādītInformāciju() { Console.WriteLine($"Konta numurs: {kontaNumurs}"); Console.WriteLine($"Īpašnieks: {īpašnieks}"); Console.WriteLine($"Atlikums: {atlikums} EUR"); } // Metode, lai iegūtu konta numuru (privātā īpašība, kas nav tieši pieejama) public int GetKontaNumurs() { return kontaNumurs; } } class Program { static Dictionary konti = new Dictionary(); // datu struktūra kontu glabāšanai static void Main() { while (true) { Console.WriteLine("\nBankas kontu pārvaldīšanas sistēma"); Console.WriteLine("-----------------------------------"); Console.WriteLine("1. Izveidot jaunu bankas kontu"); Console.WriteLine("2. Noguldīt naudu kontā"); Console.WriteLine("3. Izņemt naudu no konta"); Console.WriteLine("4. Parādīt konta informāciju"); Console.WriteLine("5. Dzēst kontu"); Console.WriteLine("6. Iziet no sistēmas"); Console.Write("Jūsu izvēle: "); string izvēle = Console.ReadLine(); try { switch (izvēle) { case "1": IzveidotKontu(); break; case "2": NoguldītNaudu(); break; case "3": IzņemtNaudu(); break; case "4": ParādītInformāciju(); break; case "5": DzēstKontu(); break; case "6": return; // iziet no programmas default: Console.WriteLine("Nederīga izvēle. Mēģiniet vēlreiz."); break; } } catch (Exception ex) { Console.WriteLine($"Kļūda: {ex.Message}"); // kļudu apstrāde, lai izvairitos no programmas avarijas } } } // metode jauna konta izveidei static void IzveidotKontu() { Console.Write("Ievadiet konta īpašnieka vārdu: "); string īpašnieks = Console.ReadLine(); Console.Write("Ievadiet sākuma atlikumu: "); decimal sākumaAtlikums = decimal.Parse(Console.ReadLine()); BankasKonts konts = new BankasKonts(īpašnieks, sākumaAtlikums); konti[konts.GetKontaNumurs()] = konts; // Saglabā kontu vārdnīcā ar unikālu konta numuru Console.WriteLine($"Konts izveidots! Konta numurs: {konts.GetKontaNumurs()}"); } // metode naudas noguldīšanai kontā static void NoguldītNaudu() { Console.Write("Ievadiet konta numuru: "); int kontaNumurs = int.Parse(Console.ReadLine()); if (!konti.ContainsKey(kontaNumurs)) { Console.WriteLine("Konts nav atrasts."); return; } Console.Write("Ievadiet noguldījuma summu: "); decimal summa = decimal.Parse(Console.ReadLine()); konti[kontaNumurs].Noguldīt(summa); } // metode naudas izņemšanai no konta static void IzņemtNaudu() { Console.Write("Ievadiet konta numuru: "); int kontaNumurs = int.Parse(Console.ReadLine()); if (!konti.ContainsKey(kontaNumurs)) { Console.WriteLine("Konts nav atrasts."); return; } Console.Write("Ievadiet izņemšanas summu: "); decimal summa = decimal.Parse(Console.ReadLine()); konti[kontaNumurs].Izņemt(summa); } // metode konta informācijas parādīšanai static void ParādītInformāciju() { Console.Write("Ievadiet konta numuru: "); int kontaNumurs = int.Parse(Console.ReadLine()); if (!konti.ContainsKey(kontaNumurs)) { Console.WriteLine("Konts nav atrasts."); return; } konti[kontaNumurs].ParādītInformāciju(); } // metode konta dzēšanai static void DzēstKontu() { Console.Write("Ievadiet konta numuru: "); int kontaNumurs = int.Parse(Console.ReadLine()); if (!konti.ContainsKey(kontaNumurs)) { Console.WriteLine("Konts nav atrasts."); return; } konti.Remove(kontaNumurs); // noņem kontu no vārdnīcas Console.WriteLine($"Konts {kontaNumurs} tika dzēsts."); } }