SlideShare uma empresa Scribd logo
1 de 7
Baixar para ler offline
CBTis No. 116 M2.SM1.AMEPOO
ACADEMIA DE PROGRAMACION – OMSP – 2019 Página 1
Constructor. El método mágico.
En C# podemos definir un método que se ejecute inicialmente y en forma automática. Este
método recibe el nombre de constructor.
El constructor tiene las siguientes características:
• Tiene el mismo nombre de la clase.
• Es el primer método que se ejecuta.
• Se ejecuta en forma automática.
• No puede retornar datos.
• Se ejecuta una única vez.
• Un constructor tiene por objetivo inicializar atributos.
Ejercicio 1: Crear una clase vehículo que contenga un constructor que muestre en pantalla, de
manera automática, algunas de las propiedades de la clase e información de un objeto creado.
using System;
namespace ClaseVehiculo1
{
Static void Main(string[] args)
{ // inicia el programa principal
Vehiculo carro = new Vehiculo(); // Instanciar objeto tipo Vehiculo
// Dar un estado inicial a nuestro objeto carro.
Vehiculo carro2 = new Vehiculo();// Instanciar objeto tipo Vehiculo
// Dar un estado inicial a nuestro objeto carro.
Console.WriteLine(carro.getRuedas); // Muestra la cantidad de ruedas
// del objeto carro de tipo Vehiculo
Console.WriteLine(carro2.getInfoVehiculo); // Muestra la cantidad de ruedas
// del objeto carro2 de tipo Vehiculo
} // fin del programa principal
}
class Vehiculo
{ // inicia la clase Vehiculo
private int ruedas; // estableciendo las propiedades de la clase Vehiculo
CBTis No. 116 M2.SM1.AMEPOO
ACADEMIA DE PROGRAMACION – OMSP – 2019 Página 2
private double motor;
private string transmission;
private bool aireAcondicionado;
public getRuedas()
{
return ruedas;
}
public string getInfoVehiculo()
{
return “Información del vehículo: n” + “Ruedas: ” + ruedas + “ Motor: ” + motor + “ Transmisión: ”
+ transmisión;
}
public Vehiculo()
{ // inicio del constructor de la clase Vehiculo
ruedas = 4;
motor = 1.5 l;
transmision = “manual”;
} // fin del constructor de la clase Vehiculo
} // fin de la clase Vehiculo
CBTis No. 116 M2.SM1.AMEPOO
ACADEMIA DE PROGRAMACION – OMSP – 2019 Página 3
Ejercicio 2: Se desean guardar 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;
using System.Threading.Tasks;
namespace PruebaConstructor1
{
class Operarios
{
private int[] sueldos;
public Operarios()
{
sueldos=new int[5];
for(int f = 0; f < sueldos.Length; f++)
{
Console.Write("Ingrese el sueldo:");
sueldos[f]=int.Parse(Console.ReadLine());
}
}
public void Imprimir()
{
for(int f = 0; f < sueldos.Length; f++)
{
Console.WriteLine(sueldos[f]);
CBTis No. 116 M2.SM1.AMEPOO
ACADEMIA DE PROGRAMACION – OMSP – 2019 Página 4
}
Console.ReadKey();
}
static void Main(string[] args)
{
Operarios op = new Operarios();
op.Imprimir();
}
}
}
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.
public Operarios()
{
sueldos=new int[5];
for(int f = 0; f < sueldos.Length; f++)
{
Console.Write("Ingrese el sueldo:");
sueldos[f]=int.Parse(Console.ReadLine());
}
}
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();
CBTis No. 116 M2.SM1.AMEPOO
ACADEMIA DE PROGRAMACION – OMSP – 2019 Página 5
Ejercicio 3: Plantear una clase llamada Alumno y definir como propiedades su nombre y su edad.
En el constructor realizar la carga de datos. Definir otros dos métodos para mostrar en pantalla 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;
using System.Threading.Tasks;
namespace PruebaConstructor2
{
class Alumno
{
private string nombre;
private int edad;
public Alumno()
{
Console.Write("Ingrese nombre:");
nombre = Console.ReadLine();
Console.Write("Ingrese edad:");
edad=int.Parse(Console.ReadLine());
}
public void Imprimir()
{
Console.WriteLine("Nombre: "+nombre);
Console.WriteLine("Edad: "+edad);
}
CBTis No. 116 M2.SM1.AMEPOO
ACADEMIA DE PROGRAMACION – OMSP – 2019 Página 6
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();
}
}
}
Declaramos la clase Alumno, sus dos propiedades y definimos el constructor con el mismo nombre
de la clase:
class Alumno
{
private string nombre;
private int edad;
CBTis No. 116 M2.SM1.AMEPOO
ACADEMIA DE PROGRAMACION – OMSP – 2019 Página 7
public Alumno()
{
Console.Write("Ingrese nombre:");
nombre = Console.ReadLine();
Console.Write("Ingrese edad:");
edad=int.Parse(Console.ReadLine());
}
En 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();
Problemas propuestos
1 - Elaborar una clase que represente un empleado. Definir como propiedades su nombre y su
sueldo. En el constructor cargar las propiedades y luego en otro método mostrar en pantalla sus
datos y por último uno que muestre un mensaje que indique si debe pagar impuestos (si el sueldo
supera los 3000 pesos)
2 - Implementar la clase operaciones. Se deben cargar dos valores enteros en el constructor,
calcular su suma, resta, multiplicación y división, cada una en un método, mostrando en pantalla
los resultados de las operaciones realizadas.

Mais conteúdo relacionado

Semelhante a _5 - Prácticas 3 - Constructor. El método mágico..pdf

Examen programación
Examen programaciónExamen programación
Examen programaciónOdalisCuichan
 
Introducción al desarrollo Web: Frontend con Angular 6
Introducción al desarrollo Web: Frontend con Angular 6Introducción al desarrollo Web: Frontend con Angular 6
Introducción al desarrollo Web: Frontend con Angular 6Gabriela Bosetti
 
Hebras
HebrasHebras
HebrasTensor
 
Taller: Prueba Unitaria con JUnit en NetBeans
Taller: Prueba Unitaria con JUnit en NetBeansTaller: Prueba Unitaria con JUnit en NetBeans
Taller: Prueba Unitaria con JUnit en NetBeansEmerson Garay
 
C6 net beansentradasysalidas
C6 net beansentradasysalidasC6 net beansentradasysalidas
C6 net beansentradasysalidasalenco
 
Php Bitter Sweet Symfony!
Php Bitter Sweet Symfony!Php Bitter Sweet Symfony!
Php Bitter Sweet Symfony!Ricard Luquero
 
Taller desarrollando sitios web multiplataforma
Taller desarrollando sitios web multiplataformaTaller desarrollando sitios web multiplataforma
Taller desarrollando sitios web multiplataformaLuis Beltran
 
Construccion a través de compontes
Construccion a través de compontesConstruccion a través de compontes
Construccion a través de compontesjalzate
 
1TAP Tema 1-GUI.pptx
1TAP Tema 1-GUI.pptx1TAP Tema 1-GUI.pptx
1TAP Tema 1-GUI.pptxATM_SSI
 
Tallerprogramacion
TallerprogramacionTallerprogramacion
Tallerprogramacionjohanadoria
 
Buenas prácticas para la construcción de software
Buenas prácticas para la construcción de softwareBuenas prácticas para la construcción de software
Buenas prácticas para la construcción de softwareIker Canarias
 
Metodo constructor de una clase JAVA
Metodo constructor de una clase JAVAMetodo constructor de una clase JAVA
Metodo constructor de una clase JAVAMANUEL RAMIREZ
 
Informe tecnicou1
Informe tecnicou1Informe tecnicou1
Informe tecnicou1Aristo1
 

Semelhante a _5 - Prácticas 3 - Constructor. El método mágico..pdf (20)

Guia no2 ado.net
Guia no2 ado.netGuia no2 ado.net
Guia no2 ado.net
 
Examen programación
Examen programaciónExamen programación
Examen programación
 
Manual de usuario
Manual de usuarioManual de usuario
Manual de usuario
 
Dcom visualC++
Dcom visualC++Dcom visualC++
Dcom visualC++
 
Reporte unidad1
Reporte unidad1Reporte unidad1
Reporte unidad1
 
Introducción al desarrollo Web: Frontend con Angular 6
Introducción al desarrollo Web: Frontend con Angular 6Introducción al desarrollo Web: Frontend con Angular 6
Introducción al desarrollo Web: Frontend con Angular 6
 
Hebras
HebrasHebras
Hebras
 
Taller: Prueba Unitaria con JUnit en NetBeans
Taller: Prueba Unitaria con JUnit en NetBeansTaller: Prueba Unitaria con JUnit en NetBeans
Taller: Prueba Unitaria con JUnit en NetBeans
 
C6 net beansentradasysalidas
C6 net beansentradasysalidasC6 net beansentradasysalidas
C6 net beansentradasysalidas
 
Php Bitter Sweet Symfony!
Php Bitter Sweet Symfony!Php Bitter Sweet Symfony!
Php Bitter Sweet Symfony!
 
Taller desarrollando sitios web multiplataforma
Taller desarrollando sitios web multiplataformaTaller desarrollando sitios web multiplataforma
Taller desarrollando sitios web multiplataforma
 
Construccion a través de compontes
Construccion a través de compontesConstruccion a través de compontes
Construccion a través de compontes
 
1TAP Tema 1-GUI.pptx
1TAP Tema 1-GUI.pptx1TAP Tema 1-GUI.pptx
1TAP Tema 1-GUI.pptx
 
Tallerprogramacion
TallerprogramacionTallerprogramacion
Tallerprogramacion
 
Creacion de proyecto_en_netbeans
Creacion de proyecto_en_netbeansCreacion de proyecto_en_netbeans
Creacion de proyecto_en_netbeans
 
Buenas prácticas para la construcción de software
Buenas prácticas para la construcción de softwareBuenas prácticas para la construcción de software
Buenas prácticas para la construcción de software
 
Computación 3 sb04003 2013
Computación 3 sb04003 2013Computación 3 sb04003 2013
Computación 3 sb04003 2013
 
In 15
In 15In 15
In 15
 
Metodo constructor de una clase JAVA
Metodo constructor de una clase JAVAMetodo constructor de una clase JAVA
Metodo constructor de una clase JAVA
 
Informe tecnicou1
Informe tecnicou1Informe tecnicou1
Informe tecnicou1
 

Último

Listas de Fundamentos de Programación 2024
Listas de Fundamentos de Programación 2024Listas de Fundamentos de Programación 2024
Listas de Fundamentos de Programación 2024AndrsReinosoSnchez1
 
Países por velocidad de sus misiles hipersónicos (2024).pdf
Países por velocidad de sus misiles hipersónicos  (2024).pdfPaíses por velocidad de sus misiles hipersónicos  (2024).pdf
Países por velocidad de sus misiles hipersónicos (2024).pdfJC Díaz Herrera
 
Los más ricos administradores de fondo de cobertura (1968-2024).pdf
Los más ricos administradores de fondo de cobertura (1968-2024).pdfLos más ricos administradores de fondo de cobertura (1968-2024).pdf
Los más ricos administradores de fondo de cobertura (1968-2024).pdfJC Díaz Herrera
 
Cuáles son las características biológicas que están marcadas en tu individual...
Cuáles son las características biológicas que están marcadas en tu individual...Cuáles son las características biológicas que están marcadas en tu individual...
Cuáles son las características biológicas que están marcadas en tu individual...israel garcia
 
Presentacion-Prevencion-Incendios-Forestales.pdf
Presentacion-Prevencion-Incendios-Forestales.pdfPresentacion-Prevencion-Incendios-Forestales.pdf
Presentacion-Prevencion-Incendios-Forestales.pdfDodiAcuaArstica
 
Tipos de Educacion en diferentes partes del mundo.pptx
Tipos de Educacion en diferentes partes del mundo.pptxTipos de Educacion en diferentes partes del mundo.pptx
Tipos de Educacion en diferentes partes del mundo.pptxMiguelPerz4
 
Técnica palatina baja, anestesiología dental
Técnica palatina baja, anestesiología dentalTécnica palatina baja, anestesiología dental
Técnica palatina baja, anestesiología dentalIngrid459352
 
AA CUADRO DE TEORIA DEL CASO. (1) (1).docx
AA CUADRO DE TEORIA DEL CASO. (1) (1).docxAA CUADRO DE TEORIA DEL CASO. (1) (1).docx
AA CUADRO DE TEORIA DEL CASO. (1) (1).docxLuisAngelYomonaYomon
 
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior UniversitariaSUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior Universitariachayananazcosimeon
 
Las mujeres más ricas del mundo (2024).pdf
Las mujeres más ricas del mundo (2024).pdfLas mujeres más ricas del mundo (2024).pdf
Las mujeres más ricas del mundo (2024).pdfJC Díaz Herrera
 
Industria musical de EUA vs Industria musical Corea del Sur (2024).pdf
Industria musical de EUA vs Industria musical Corea del Sur (2024).pdfIndustria musical de EUA vs Industria musical Corea del Sur (2024).pdf
Industria musical de EUA vs Industria musical Corea del Sur (2024).pdfJC Díaz Herrera
 
Novelas Turcas vs Series de EUA en audiencia (2024).pdf
Novelas Turcas vs Series de EUA en audiencia  (2024).pdfNovelas Turcas vs Series de EUA en audiencia  (2024).pdf
Novelas Turcas vs Series de EUA en audiencia (2024).pdfJC Díaz Herrera
 
Reservas de divisas y oro en México en sexenio de AMLO (2018-2024).pdf
Reservas de divisas y oro en México en sexenio de AMLO (2018-2024).pdfReservas de divisas y oro en México en sexenio de AMLO (2018-2024).pdf
Reservas de divisas y oro en México en sexenio de AMLO (2018-2024).pdfJC Díaz Herrera
 
Data Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosData Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosssuser948499
 
presentacion de conjuntos para primaria.ppt
presentacion de conjuntos para primaria.pptpresentacion de conjuntos para primaria.ppt
presentacion de conjuntos para primaria.pptMelina Alama Visitacion
 
Familias más ricas de países de AL en inicio de su hegemonía (2024).pdf
Familias más ricas de países de AL en inicio de su hegemonía (2024).pdfFamilias más ricas de países de AL en inicio de su hegemonía (2024).pdf
Familias más ricas de países de AL en inicio de su hegemonía (2024).pdfJC Díaz Herrera
 
Los artistas mexicanos con más ventas de discos en la historia (2024).pdf
Los artistas mexicanos con más ventas de discos en la historia (2024).pdfLos artistas mexicanos con más ventas de discos en la historia (2024).pdf
Los artistas mexicanos con más ventas de discos en la historia (2024).pdfJC Díaz Herrera
 
INTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptx
INTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptxINTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptx
INTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptxJamesHerberthBacaTel
 
Análisis de datos en acción: Optimizando el crecimiento de Cyclistic
Análisis de datos en acción: Optimizando el crecimiento de CyclisticAnálisis de datos en acción: Optimizando el crecimiento de Cyclistic
Análisis de datos en acción: Optimizando el crecimiento de CyclisticJamithGarcia1
 
Los_países_con_la_mayor_cantidad_de_rascacielos (2023).pdf
Los_países_con_la_mayor_cantidad_de_rascacielos (2023).pdfLos_países_con_la_mayor_cantidad_de_rascacielos (2023).pdf
Los_países_con_la_mayor_cantidad_de_rascacielos (2023).pdfJC Díaz Herrera
 

Último (20)

Listas de Fundamentos de Programación 2024
Listas de Fundamentos de Programación 2024Listas de Fundamentos de Programación 2024
Listas de Fundamentos de Programación 2024
 
Países por velocidad de sus misiles hipersónicos (2024).pdf
Países por velocidad de sus misiles hipersónicos  (2024).pdfPaíses por velocidad de sus misiles hipersónicos  (2024).pdf
Países por velocidad de sus misiles hipersónicos (2024).pdf
 
Los más ricos administradores de fondo de cobertura (1968-2024).pdf
Los más ricos administradores de fondo de cobertura (1968-2024).pdfLos más ricos administradores de fondo de cobertura (1968-2024).pdf
Los más ricos administradores de fondo de cobertura (1968-2024).pdf
 
Cuáles son las características biológicas que están marcadas en tu individual...
Cuáles son las características biológicas que están marcadas en tu individual...Cuáles son las características biológicas que están marcadas en tu individual...
Cuáles son las características biológicas que están marcadas en tu individual...
 
Presentacion-Prevencion-Incendios-Forestales.pdf
Presentacion-Prevencion-Incendios-Forestales.pdfPresentacion-Prevencion-Incendios-Forestales.pdf
Presentacion-Prevencion-Incendios-Forestales.pdf
 
Tipos de Educacion en diferentes partes del mundo.pptx
Tipos de Educacion en diferentes partes del mundo.pptxTipos de Educacion en diferentes partes del mundo.pptx
Tipos de Educacion en diferentes partes del mundo.pptx
 
Técnica palatina baja, anestesiología dental
Técnica palatina baja, anestesiología dentalTécnica palatina baja, anestesiología dental
Técnica palatina baja, anestesiología dental
 
AA CUADRO DE TEORIA DEL CASO. (1) (1).docx
AA CUADRO DE TEORIA DEL CASO. (1) (1).docxAA CUADRO DE TEORIA DEL CASO. (1) (1).docx
AA CUADRO DE TEORIA DEL CASO. (1) (1).docx
 
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior UniversitariaSUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
 
Las mujeres más ricas del mundo (2024).pdf
Las mujeres más ricas del mundo (2024).pdfLas mujeres más ricas del mundo (2024).pdf
Las mujeres más ricas del mundo (2024).pdf
 
Industria musical de EUA vs Industria musical Corea del Sur (2024).pdf
Industria musical de EUA vs Industria musical Corea del Sur (2024).pdfIndustria musical de EUA vs Industria musical Corea del Sur (2024).pdf
Industria musical de EUA vs Industria musical Corea del Sur (2024).pdf
 
Novelas Turcas vs Series de EUA en audiencia (2024).pdf
Novelas Turcas vs Series de EUA en audiencia  (2024).pdfNovelas Turcas vs Series de EUA en audiencia  (2024).pdf
Novelas Turcas vs Series de EUA en audiencia (2024).pdf
 
Reservas de divisas y oro en México en sexenio de AMLO (2018-2024).pdf
Reservas de divisas y oro en México en sexenio de AMLO (2018-2024).pdfReservas de divisas y oro en México en sexenio de AMLO (2018-2024).pdf
Reservas de divisas y oro en México en sexenio de AMLO (2018-2024).pdf
 
Data Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosData Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datos
 
presentacion de conjuntos para primaria.ppt
presentacion de conjuntos para primaria.pptpresentacion de conjuntos para primaria.ppt
presentacion de conjuntos para primaria.ppt
 
Familias más ricas de países de AL en inicio de su hegemonía (2024).pdf
Familias más ricas de países de AL en inicio de su hegemonía (2024).pdfFamilias más ricas de países de AL en inicio de su hegemonía (2024).pdf
Familias más ricas de países de AL en inicio de su hegemonía (2024).pdf
 
Los artistas mexicanos con más ventas de discos en la historia (2024).pdf
Los artistas mexicanos con más ventas de discos en la historia (2024).pdfLos artistas mexicanos con más ventas de discos en la historia (2024).pdf
Los artistas mexicanos con más ventas de discos en la historia (2024).pdf
 
INTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptx
INTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptxINTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptx
INTRODUCCION-A-LOS-ALGORITMOS-BASICOS.pptx
 
Análisis de datos en acción: Optimizando el crecimiento de Cyclistic
Análisis de datos en acción: Optimizando el crecimiento de CyclisticAnálisis de datos en acción: Optimizando el crecimiento de Cyclistic
Análisis de datos en acción: Optimizando el crecimiento de Cyclistic
 
Los_países_con_la_mayor_cantidad_de_rascacielos (2023).pdf
Los_países_con_la_mayor_cantidad_de_rascacielos (2023).pdfLos_países_con_la_mayor_cantidad_de_rascacielos (2023).pdf
Los_países_con_la_mayor_cantidad_de_rascacielos (2023).pdf
 

_5 - Prácticas 3 - Constructor. El método mágico..pdf

  • 1. CBTis No. 116 M2.SM1.AMEPOO ACADEMIA DE PROGRAMACION – OMSP – 2019 Página 1 Constructor. El método mágico. En C# podemos definir un método que se ejecute inicialmente y en forma automática. Este método recibe el nombre de constructor. El constructor tiene las siguientes características: • Tiene el mismo nombre de la clase. • Es el primer método que se ejecuta. • Se ejecuta en forma automática. • No puede retornar datos. • Se ejecuta una única vez. • Un constructor tiene por objetivo inicializar atributos. Ejercicio 1: Crear una clase vehículo que contenga un constructor que muestre en pantalla, de manera automática, algunas de las propiedades de la clase e información de un objeto creado. using System; namespace ClaseVehiculo1 { Static void Main(string[] args) { // inicia el programa principal Vehiculo carro = new Vehiculo(); // Instanciar objeto tipo Vehiculo // Dar un estado inicial a nuestro objeto carro. Vehiculo carro2 = new Vehiculo();// Instanciar objeto tipo Vehiculo // Dar un estado inicial a nuestro objeto carro. Console.WriteLine(carro.getRuedas); // Muestra la cantidad de ruedas // del objeto carro de tipo Vehiculo Console.WriteLine(carro2.getInfoVehiculo); // Muestra la cantidad de ruedas // del objeto carro2 de tipo Vehiculo } // fin del programa principal } class Vehiculo { // inicia la clase Vehiculo private int ruedas; // estableciendo las propiedades de la clase Vehiculo
  • 2. CBTis No. 116 M2.SM1.AMEPOO ACADEMIA DE PROGRAMACION – OMSP – 2019 Página 2 private double motor; private string transmission; private bool aireAcondicionado; public getRuedas() { return ruedas; } public string getInfoVehiculo() { return “Información del vehículo: n” + “Ruedas: ” + ruedas + “ Motor: ” + motor + “ Transmisión: ” + transmisión; } public Vehiculo() { // inicio del constructor de la clase Vehiculo ruedas = 4; motor = 1.5 l; transmision = “manual”; } // fin del constructor de la clase Vehiculo } // fin de la clase Vehiculo
  • 3. CBTis No. 116 M2.SM1.AMEPOO ACADEMIA DE PROGRAMACION – OMSP – 2019 Página 3 Ejercicio 2: Se desean guardar 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; using System.Threading.Tasks; namespace PruebaConstructor1 { class Operarios { private int[] sueldos; public Operarios() { sueldos=new int[5]; for(int f = 0; f < sueldos.Length; f++) { Console.Write("Ingrese el sueldo:"); sueldos[f]=int.Parse(Console.ReadLine()); } } public void Imprimir() { for(int f = 0; f < sueldos.Length; f++) { Console.WriteLine(sueldos[f]);
  • 4. CBTis No. 116 M2.SM1.AMEPOO ACADEMIA DE PROGRAMACION – OMSP – 2019 Página 4 } Console.ReadKey(); } static void Main(string[] args) { Operarios op = new Operarios(); op.Imprimir(); } } } 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. public Operarios() { sueldos=new int[5]; for(int f = 0; f < sueldos.Length; f++) { Console.Write("Ingrese el sueldo:"); sueldos[f]=int.Parse(Console.ReadLine()); } } 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();
  • 5. CBTis No. 116 M2.SM1.AMEPOO ACADEMIA DE PROGRAMACION – OMSP – 2019 Página 5 Ejercicio 3: Plantear una clase llamada Alumno y definir como propiedades su nombre y su edad. En el constructor realizar la carga de datos. Definir otros dos métodos para mostrar en pantalla 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; using System.Threading.Tasks; namespace PruebaConstructor2 { class Alumno { private string nombre; private int edad; public Alumno() { Console.Write("Ingrese nombre:"); nombre = Console.ReadLine(); Console.Write("Ingrese edad:"); edad=int.Parse(Console.ReadLine()); } public void Imprimir() { Console.WriteLine("Nombre: "+nombre); Console.WriteLine("Edad: "+edad); }
  • 6. CBTis No. 116 M2.SM1.AMEPOO ACADEMIA DE PROGRAMACION – OMSP – 2019 Página 6 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(); } } } Declaramos la clase Alumno, sus dos propiedades y definimos el constructor con el mismo nombre de la clase: class Alumno { private string nombre; private int edad;
  • 7. CBTis No. 116 M2.SM1.AMEPOO ACADEMIA DE PROGRAMACION – OMSP – 2019 Página 7 public Alumno() { Console.Write("Ingrese nombre:"); nombre = Console.ReadLine(); Console.Write("Ingrese edad:"); edad=int.Parse(Console.ReadLine()); } En 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(); Problemas propuestos 1 - Elaborar una clase que represente un empleado. Definir como propiedades su nombre y su sueldo. En el constructor cargar las propiedades y luego en otro método mostrar en pantalla sus datos y por último uno que muestre un mensaje que indique si debe pagar impuestos (si el sueldo supera los 3000 pesos) 2 - Implementar la clase operaciones. Se deben cargar dos valores enteros en el constructor, calcular su suma, resta, multiplicación y división, cada una en un método, mostrando en pantalla los resultados de las operaciones realizadas.