Exemplo n.º 1
0
        static void Main(string[] args)
        {
            Carte book1 = new Carte("Solaris", "Stanislaw Lem");

            book1.SeUzeaza();
            book1.SeUzeaza();
            book1.SeUzeaza();


            CarteImprumutabila book2 = new CarteImprumutabila("Solaris2", "Stanislaw Lem2");

            book2.SeUzeaza();

            CarteNeimprumutabila book3 = new CarteNeimprumutabila("Solaris3", "Stanislaw Lem3");

            book3.SeUzeaza();

            Bibliotecar bibliotecar1 = new Bibliotecar();

            bibliotecar1.Nume = "Marius";
            CititorSimplu cititors1 = new CititorSimplu();

            cititors1.Nume = "Marcel";



            Console.ReadKey();
        }
Exemplo n.º 2
0
        private static void InBiblioteca(Cititor Cititor, Bibliotecar Bibliotecar, List <CarteImprumutabila> listaCartiImprumutabile,
                                         List <CarteNeimprumutabila> listaCartiNeimprumutabile)
        {
            Console.WriteLine($"Selectati operatiunea dorita:");
            Console.WriteLine($"1.Creeaza Abonament Simplu.");
            Console.WriteLine($"2.Creeaza Abonament VIP.");
            Console.WriteLine($"3.Schimba Abonament.");
            Console.WriteLine($"4.Inchide Abonament.");
            Console.WriteLine($"5.Imprumuta o carte.");
            Console.WriteLine($"6.Citeste in Biblioteca o Carte.");
            ConsoleKeyInfo tastaApasata = Console.ReadKey();

            switch (tastaApasata.Key)
            {
            case ConsoleKey.D1:
                Bibliotecar.AbonamentSimplu(Cititor);
                break;

            case ConsoleKey.D2:
                Bibliotecar.AbonamentVIP(Cititor);
                break;

            case ConsoleKey.D3:
                Bibliotecar.SchimbaAbonament(Cititor);
                break;

            case ConsoleKey.D4:
                Bibliotecar.InchideAbonament(Cititor);
                break;

            case ConsoleKey.D5:
                CerereImprumut(Cititor, Bibliotecar, listaCartiImprumutabile, listaCartiNeimprumutabile);
                break;

            case ConsoleKey.D6:
                CerereCarteInBiblioteca(Cititor, Bibliotecar, listaCartiImprumutabile, listaCartiNeimprumutabile);
                break;
            }
            Console.WriteLine();
            Console.WriteLine("Doriti o noua operatiune? Y/N");
            Console.WriteLine();

            ConsoleKeyInfo keyInfo = Console.ReadKey();

            if (keyInfo.Key == ConsoleKey.Y)
            {
                Console.WriteLine();
                InBiblioteca(Cititor, Bibliotecar, listaCartiImprumutabile, listaCartiNeimprumutabile);
            }
            else
            {
                Console.WriteLine($"Sa aveti o zi buna!Va mai asteptam pe la noi.");
            }
        }
Exemplo n.º 3
0
 private static void CerereCarteInBiblioteca(Cititor Cititor, Bibliotecar Bibliotecar, List <CarteImprumutabila> listaCartiImprumutabile, List <CarteNeimprumutabila> listaCartiNeimprumutabile)
 {
     if (Cititor.Abonament == null)
     {
         Console.WriteLine("Nu aveti niciun abonament pe numele dvs.");
         InBiblioteca(Cititor, Bibliotecar, listaCartiImprumutabile, listaCartiNeimprumutabile);
     }
     else if (Cititor.Abonament.TipAbonament == TipAbonament.AbonamentSimplu)
     {
         Console.WriteLine("Din pacate abonamentul dvs este unul simplu .Va sugeram sa vi-l schimbati intr-unul de tip VIP pentru a avea acces la toate cartile.");
         InBiblioteca(Cititor, Bibliotecar, listaCartiImprumutabile, listaCartiNeimprumutabile);
     }
     else
     {
         Console.WriteLine($"Aveti de ales intre urmatoarele carti.");
         for (int i = 0; i < listaCartiNeimprumutabile.Count; i++)
         {
             Console.WriteLine($"{i + 1}. {listaCartiNeimprumutabile[i].Titlu} - Mai avem disponibile {listaCartiNeimprumutabile[i].NrExemplare} exemplare.");
         }
         Console.WriteLine($"Tastati cifra corespunzatoare cartii dorite.");
         //ConsoleKeyInfo CarteAleasa = Console.ReadKey();
         string CarteAleasaStr = Console.ReadLine();
         int    CarteAleasaInt;
         if (int.TryParse(CarteAleasaStr, out CarteAleasaInt))
         {
             if ((CarteAleasaInt < 1) || (CarteAleasaInt > listaCartiNeimprumutabile.Count))
             {
                 Console.WriteLine($"Cifra aleasa nu corespunde niciunei carti din lista.");
                 return;
             }
             else if (listaCartiNeimprumutabile[CarteAleasaInt - 1].NrExemplare == 0)
             {
                 Console.WriteLine($"Din pacate, nu mai avem niciun exemplar disponibil.");
                 ConsoleKeyInfo keyInfo = Console.ReadKey();
                 if (keyInfo.Key == ConsoleKey.Y)
                 {
                     Console.WriteLine();
                     InBiblioteca(Cititor, Bibliotecar, listaCartiImprumutabile, listaCartiNeimprumutabile);
                 }
                 else
                 {
                     Console.WriteLine($"Sa aveti o zi buna!Va mai asteptam pe la noi.");
                     return;
                 }
             }
             else
             {
                 Cititor.CitesteCarteSalaLectura(listaCartiNeimprumutabile[CarteAleasaInt - 1]);
             }
         }
     }
 }
Exemplo n.º 4
0
        static void Main(string[] args)
        {
            Cititor                     Anastasia                 = new Cititor("Anastasia");
            Bibliotecar                 AncaBibliotecara          = new Bibliotecar("Anca");
            CarteImprumutabila          MonteCristo               = new CarteImprumutabila("Contele de Monte Cristo", "Alexandre Dumas", 5);
            CarteImprumutabila          CrimaSiPedeapsa           = new CarteImprumutabila("Crima si Pedeapsa", "F.M. Dostoievski", 3);
            CarteImprumutabila          RazboiSiPace              = new CarteImprumutabila("Razboi si Pace", "Lev Tolstoi", 4);
            CarteImprumutabila          DavidCopperfield          = new CarteImprumutabila("David Copperfield", "Charles Dickens", 3);
            CarteNeimprumutabila        EnciclopediaBritanica     = new CarteNeimprumutabila("Enciclopedia Britanica", "-", 1);
            CarteNeimprumutabila        IstoriaRomaniei           = new CarteNeimprumutabila("Istoria Romaniei", "Nicolae Iorga", 1);
            List <CarteImprumutabila>   ListaCartiImprumutabile   = new List <CarteImprumutabila>();
            List <CarteNeimprumutabila> ListaCartiNeimprumutabile = new List <CarteNeimprumutabila>();

            ListaCartiImprumutabile.Add(MonteCristo);
            ListaCartiImprumutabile.Add(CrimaSiPedeapsa);
            ListaCartiImprumutabile.Add(RazboiSiPace);
            ListaCartiImprumutabile.Add(DavidCopperfield);
            ListaCartiNeimprumutabile.Add(EnciclopediaBritanica);
            ListaCartiNeimprumutabile.Add(IstoriaRomaniei);

            InBiblioteca(Anastasia, AncaBibliotecara, ListaCartiImprumutabile, ListaCartiNeimprumutabile);
            Console.ReadKey();
        }
Exemplo n.º 5
0
        static void Main(string[] args)         // N-am stiut cum sa transform lista de carti disponibile intr-o lista tip int ca sa fac referire la cartile din biblioteca
        {
            List <Carte> CartiDisponibile = new List <Carte>();
            Carte        ManifestderKommunistischenPartei = new Carte("Manifestul Partidului Comunist", "Karl Marx si Friedrich Engels", 304, 2002, 5, /*5,*/ "Document", "Politica", "Penguin Books", false);

            CartiDisponibile.Add(ManifestderKommunistischenPartei);
            Carte ZarathustraEinBuchfürAlleundKeinen = new Carte("Asa grait-a Zarathustra", "Friedrich Nietzsche", 392, 2019, 3, /*2,*/ "Nuvela filosofica", "Filosofie", "Humanitas", false);

            CartiDisponibile.Add(ZarathustraEinBuchfürAlleundKeinen);
            Carte VorlesungenzurEinführungindiePsychoanalyseUndNeueFolge = new Carte("Introducere in psihanaliza", "Sigmund Freud", 664, 2010, 1, /*0,*/ "Psihanaliza", "Psihologie", "Trei", true);

            CartiDisponibile.Add(VorlesungenzurEinführungindiePsychoanalyseUndNeueFolge);
            Carte 生き甲斐 = new Carte("Ikigai", "Garcia Hector si Francesc Miralles", 176, 2017, 5, /*3,*/ "Self Help", "Dezvoltare personala", "Humanitas", true);

            CartiDisponibile.Add(生き甲斐);
            Carte StaringAtTheSun = new Carte("Privind soarele in fata", "Irvin Yalom", 240, 2011, 2, /*2,*/ "Ezoterism", "Dezvoltare personala", "Vellant", true);

            CartiDisponibile.Add(StaringAtTheSun);
            Carte TheSixPillarsofSelfEsteem = new Carte("Cei sase stalpi ai increderii in sine", "Nathaniel Branden", 352, 2008, 4, /*1,*/ "Self Help", "Psihologie", "Amsta", false);

            CartiDisponibile.Add(TheSixPillarsofSelfEsteem);

            CititorSimplu Cristian = new CititorSimplu("Avram", "Cristian", 0, 3);
            CititorSimplu Rudi     = new CititorSimplu("Rudi", "Ovidiu", 2, 0);
            CititorSimplu Gabi     = new CititorSimplu("Hanu", "Gabriel", 1, 5);
            CititorSimplu Mioara   = new CititorSimplu("Manuela", "Mioara", 1, 3);
            CititorSimplu Letitia  = new CititorSimplu("Provian", "Letitia", 0, 2);
            CititorSimplu Vlad     = new CititorSimplu("Octavian", "Vlad", 0, 1);

            Bibliotecar Bogdan = new Bibliotecar("Geagu Bogdan", "Pasteluri bacoviene", false);

            bool DeschidemBiblioteca(Bibliotecar bibliotecar)
            {
                Console.WriteLine("Doriti sa deschideti biblioteca?");
                Console.WriteLine("1.Da    2.Nu");
                ConsoleKeyInfo tastaApasata = Console.ReadKey();

                if (tastaApasata.Key == ConsoleKey.D1)
                {
                    Bogdan.IntraInBiblioteca();
                    Console.ReadKey();
                    return(true);
                }
                else if (tastaApasata.Key == ConsoleKey.D2)
                {
                    Console.WriteLine("Ati selectat ca biblioteca sa ramana inchisa.");
                    Console.WriteLine();
                    Console.WriteLine("V-ati razgandit? Apasati orice tasta pentru a vi se afisa meniul.");
                    Console.ReadKey();
                    DeschidemBiblioteca(bibliotecar);
                    return(false);
                }
                else
                {
                    Console.WriteLine("Nu ati selectat dintre optiunile afisate, va rugam reveniti.");
                    Console.WriteLine();
                    Console.WriteLine("V-ati razgandit? Apasati orice tasta pentru a vi se afisa meniul.");
                    Console.ReadKey();
                    DeschidemBiblioteca(bibliotecar);
                    return(false);
                }
            }

            DeschidemBiblioteca(Bogdan);
            Vlad.IntraInBiblioteca();
            Bogdan.DoritiOCarte(Vlad);
            Bogdan.AreMembership(Vlad);
            Vlad.PoateImprumutaCartea();
            if ((Vlad.Membership == 0) && (Vlad.CartiImprumutate == 3))
            {
                Console.WriteLine($"Ati atins limita de {Vlad.CartiImprumutate} carti, nu mai puteti imprumuta alte titluri" +
                                  $"pana nu returnati cel putin una dintre ele sau achizitionati abonamentul de membru VIP.");
                Console.WriteLine("Doriti sa deveniti membru VIP?  1.Da    2.Nu");
                ConsoleKeyInfo tastaApasata = Console.ReadKey();
                if (tastaApasata.Key == ConsoleKey.D1)
                {
                    Vlad.Membership = 1;
                    Console.WriteLine("Felicitari! Sunteti membru VIP!");
                    Vlad.PoateImprumutaCartea();
                }
                else
                {
                    Console.WriteLine("Returnati din carti pentru a putea imprumuta altele.");
                }
            }
            else
            {
                Vlad.CartiImprumutate = Bibliotecar.ImprumutaCartea(生き甲斐);
            }
        }