Beispiel #1
0
        static void Main(string[] args)
        {
            Biblioteca miBiblioteca = 5;

            Autor  a  = new Autor("Esteban", "Rey");
            Autor  b  = new Autor("Joe", "Mayo");
            Manual m1 = new Manual("Economia", 25.66f, "Domingo", "Caballo", ETipo.Finanzas);
            Novela n1 = new Novela("Miseria", 63.88f, a, EGenero.Romantica);
            Manual m2 = new Manual("C#", 29.95f, "Joe", "Mayo", ETipo.Tecnico);
            Novela n2 = new Novela("Miseria", 203.00f, a, EGenero.Accion);
            Novela n3 = new Novela("Miseria", 98.00f, a, EGenero.CienciaFiccion);
            Novela n4 = new Novela("Miseria", 103.50f, b, EGenero.Accion);

            miBiblioteca += m1;
            miBiblioteca += m1;
            miBiblioteca += n1;
            miBiblioteca += m2;
            miBiblioteca += n2;
            miBiblioteca += n3;
            miBiblioteca += n4;

            Console.WriteLine(Biblioteca.Mostrar(miBiblioteca));

            Console.ReadLine();
        }
Beispiel #2
0
        static void Main(string[] args)
        {
            Autor a1 = new Autor("Domingo", "Caballo");
            Autor a2 = new Autor("Esteban", "Rey");
            Autor a3 = new Autor("Joe", "Mayo");

            Manual m1 = new Manual("Economia", (float)25.66, "Domingo", "Caballo", Etipo.Finanzas);
            Novela n1 = new Novela("Miseria", (float)63.88, a2, EGenero.Romantica);
            Manual m2 = new Manual("C#", (float)29.95, "Joe", "Mayo", Etipo.Tecnico);
            Novela n2 = new Novela("Miseria", 203, a2, EGenero.Accion);
            Novela n8 = new Novela("Miseria", 98, a2, EGenero.CienciaFiccion);
            Novela n3 = new Novela("Miseria", 98, a2, EGenero.CienciaFiccion);
            Novela n6 = new Novela("asdfas", 98, a1, EGenero.CienciaFiccion);


            Biblioteca b;

            b = 5;

            b += m1;
            b += n1;
            b += n3;
            b += m2;
            b += n8; //Repetido
            b += n2;
            b += n6; //No hay lugar

            Console.WriteLine(Biblioteca.Mostrar(b));
            Console.ReadKey();
        }
Beispiel #3
0
        public static string Mostrar(Biblioteca b)
        {
            Console.WriteLine("Precio de Manuales {0:.##}", b.PrecioManuales);
            Console.WriteLine("Precio de Novelas {0:.##}", b.PrecioNovelas);
            Console.WriteLine("Precio Total {0:.##}", b.PrecioTotal);
            StringBuilder sb = new StringBuilder();

            foreach (Libro l in b._libros)
            {
                if (l is Manual)
                {
                    Manual m = (Manual)l;

                    sb.AppendLine(m.Mostrar());
                }

                if (l is Novela)
                {
                    Novela n = (Novela)l;

                    sb.AppendLine(n.Mostrar());
                }
            }

            return(sb.ToString());
        }
Beispiel #4
0
        public static bool operator ==(Biblioteca b, Libro l)
        {
            if (l is Manual)
            {
                Manual l3 = (Manual)l;
                foreach (Libro l2 in b._libros)
                {
                    if (l2 is Manual)
                    {
                        Manual m = (Manual)l2;

                        if (m == l3)
                        {
                            return(true);
                        }
                    }
                }
            }

            if (l is Novela)
            {
                Novela l3 = (Novela)l;
                foreach (Libro l2 in b._libros)
                {
                    if (l2 is Novela)
                    {
                        Novela m = (Novela)l2;

                        if (m == l3)
                        {
                            return(true);
                        }
                    }
                }
            }



            return(false);
        }
Beispiel #5
0
        private double ObtenerPrecio(ELibro tipo)
        {
            double cant_Manual = 0;
            double cant_Novela = 0;
            double retorno     = 0;

            foreach (Libro l in this._libros)
            {
                if (l is Manual)
                {
                    Manual m = (Manual)l;
                    cant_Manual += (double)m;
                }

                if (l is Novela)
                {
                    Novela n = (Novela)l;
                    cant_Novela += (double)n;
                }
            }

            switch (tipo)
            {
            case ELibro.Manual:
                retorno = cant_Manual;
                break;

            case ELibro.Novela:
                retorno = cant_Novela;
                break;

            case ELibro.Ambos:
                retorno = cant_Novela + cant_Manual;
                break;
            }

            return(retorno);
        }