Veterinaria de gatos, ejercicio

Programación Orientada a Objetos (Tower defense - kingdom rush)

Moderator: julianmartinez16

Post Reply
User avatar
xacarana
Site Admin
Posts: 1213
Joined: Fri Jan 15, 2016 6:13 pm

Veterinaria de gatos, ejercicio

Post by xacarana » Fri Sep 30, 2016 9:08 am

Clase Gato

Code: Select all

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Veterinaria
{
    class Gato
    {
        private string nombre;
        private string raza;
        private int id;
        private bool sexo;
                
        public Gato()
        {           
            Console.WriteLine("Cree un gato");
        }

        public Gato(string nombre, string raza, int id, bool sexo)
        {
            Nombre = nombre;
            Raza = raza;
            Id = id;
            Sexo = sexo;
        }

        public string Nombre
        {
            get { return nombre; }
            set { nombre = value; }
        }


        public string Raza
        {
            get { return raza; }
            set { raza = value; }
        }


        public int Id
        {
            get { return id; }
            set { id = value; }
        }


        public bool Sexo
        {
            get { return sexo; }
            set { sexo = value; }
        }
    }
}

Clase Veterinaria

Code: Select all

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Veterinaria
{
    class Veterinaria
    {
        private Gato[] gatos;//Declaración
        private int contador_gatos;

        public Veterinaria()
        {
            gatos = new Gato[3];
        }

        public void BuscarGato(Gato[] gatos, int id)
        {
            Gato busqueda = null;

            for (int i = 0; i < gatos.Length; i++)
            {
                if (gatos[i] != null)
                {
                    if (gatos[i].Id == id)
                    {
                        busqueda = gatos[i];
                    }
                }
            }

            if (busqueda != null)
            {
                Console.Write("El gato se llama " + busqueda.Nombre);
            }
            else
            {
                Console.WriteLine("El gato no se encontró");
            }
        }

        public void RegistrarGato()
        {
            Gato nuevo;
            string nombre, raza,temp;
            int id;
            bool sexo, datos_correcto = true;

            Console.WriteLine("Ingrese el nombre del gato");
            nombre = Console.ReadLine();

            Console.WriteLine("Ingrese la raza del gato");
            raza = Console.ReadLine();

            Console.WriteLine("Ingrese el id del gato (Debe ser un número)");
            temp = Console.ReadLine();

            if (!int.TryParse(temp, out id))
            {
                Console.WriteLine("El id se leyó incorrectamente");
                datos_correcto = false;
            }

            Console.WriteLine("Ingrese el sexo del gato (True:Hembra, False:Macho)");
            temp = Console.ReadLine();

            if (!bool.TryParse(temp, out sexo))
            {
                Console.WriteLine("El sexo se leyó incorrectamente");
                datos_correcto = false;
            }

            if (datos_correcto && contador_gatos + 1 < gatos.Length)
            {
                nuevo = new Gato(nombre, raza, id, sexo);
                gatos[contador_gatos] = nuevo;
                contador_gatos++;
            }
            else
            {
                Console.WriteLine("Error al leer el gato, intente nuevamente");
            }
        }
    }
}

Clase programa

Code: Select all

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Veterinaria
{
    class Program
    {
       
        static void Main(string[] args)
        {
                        
            Console.ReadKey();
        }
    }
}
  • Realizar un menú por consola que me permita usar la clase veterinaria
  • Realizar la funcionalidad de crear nuevos gatos
  • Realizar la funcionalidad de búsqueda de gato
  • ¿Cómo puedo especificar la capacidad de alojamiento de gatos de la veterinaria?
Nota: Recuerde que la función registrar gato y buscar gato, ya están implementadas, solo se deben usar los métodos respectivos, desde la clase programa.
Andrés Bedoya Tobón
Profesor
"I only smile in the dark, I only smile when it's complicated" Raybiez

Post Reply