Ejercicios Resueltos de Constructores en C#

Ejercicios Resueltos de Constructores en C# 

Ejemplo 1

Realizar un programa que ingrese los sueldos de 5 operarios en un vector. Realizar la creación y carga del vector en el constructor.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace PruebaConstructor
{
    class Operarios
    {
        private int[] sueldos;
        public Operarios()
        {
            sueldos = new int[5];
            for (int f = 0; f < sueldos.Length; f++)
            {
                Console.Write("Ingrese el sueldo "+(f+1)+": ");
                string linea = Console.ReadLine();
                sueldos[f] = int.Parse(linea);
            }
        }
        public void Imprimir()
        {
            Console.WriteLine("Los Sueldos Ingresados.");
            for (int f = 0; f < sueldos.Length; f++)
            {
                Console.WriteLine(sueldos[f]);
            }
            Console.ReadKey();
        }
        static void Main(string[] args)
        {
            Operarios op = new Operarios();
            op.Imprimir();
        }
    }
}
Al ejecutar el código muestra el siguiente resultado


Explicación: 
Como la clase se llama Operarios el constructor tiene el mismo nombre, no disponemos la palabra clave void ya que el constructor no puede retornar datos.
La ventaja de plantear un constructor en lugar de definir un método con cualquier nombre es que se llamará en forma automática cuando se crea un objeto de esta clase:
            Operarios op = new Operarios();

Cuando se crea el objeto op se llama al método constructor.
Finalmente llamamos al método imprimir:
            op.Imprimir();

Ejemplo 2

Plantear una clase llamada Alumno y definir como atributos su nombre y su edad. En el constructor realizar el ingreso de datos. Definir otros dos métodos para imprimir los datos ingresados y un mensaje si es mayor o no de edad (edad >=18)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace PruebaConstructor
{
    class Alumno
    {
        private string nombre;
        private int edad;
        public Alumno()
        {
            Console.Write("Ingrese nombre:");
            nombre = Console.ReadLine();
            Console.Write("Ingrese edad:");
            string linea = Console.ReadLine();
            edad = int.Parse(linea);
        }
        public void Imprimir()
        {
            Console.WriteLine("Nombre:" + nombre);
            Console.WriteLine("Edad:" + edad);
        }
        public void EsMayorEdad()
        {
            if (edad >= 18)
            {
                Console.Write(nombre + " es mayor de edad.");
            }
            else
            {
                Console.Write(nombre + " no es mayor de edad.");
            }
        }
        static void Main(string[] args)
        {
            Alumno alumno1 = new Alumno();
            alumno1.Imprimir();
            alumno1.EsMayorEdad();
            Console.ReadKey();
        }
    }
}
Al ejecutar el código muestra el siguiente resultado

Explicación: 
En la main el constructor se llama en forma automática cuando creamos un objeto de la clase Alumno:
        static void Main(string[] args)
        {
            Alumno alumno1 = new Alumno();
Los otros dos métodos deben llamarse por su nombre y en el orden que necesitemos:
            alumno1.Imprimir();
            alumno1.EsMayorEdad();

No hay comentarios:

Publicar un comentario