EVALUACIÓN Programa de trabajador Universidad Tecnológica de Puebla Tecnologías de la información y comunicación Programación 2 D Marco Antonio Marín Fernández
Planteamiento Se desea visualizar el incremento sobre el salario de un trabajador por departamento: 1) Informática 20% 2) Mantenimiento 10% Y su bonificación por antigüedad de $3000 sobre su salario, que aplica en caso de tener más de 10 años trabajando.
Diagramas de clase Trabajador -Salario = double; -Sueldo = double; -PagoHora = double; -Horas = int; -Departamento = int; -Años = int; +CalcularSalario() +IncrementoDeDepartamento() +Antigüedad() Trabajador -Salario = 2500.0; -Sueldo = 3000.0; -PagoHora = 500.0; -Horas = 5; -Departamento = 1; -Años = 1; +CalcularSalario() +IncrementoDeDepartamento() +Antigüedad() Trabajador -Salario = 4000.0; -Sueldo = 4800.0; -PagoHora = 400.0; -Horas = 10; -Departamento = 1; -Años = 1; +CalcularSalario() +IncrementoDeDepartamento() +Antigüedad() Trabajador -Salario = 2400.0; -Sueldo = 2640.0; -PagoHora = 120.0; -Horas = 20; -Departamento = 2; -Años = 11; +CalcularSalario() +IncrementoDeDepartamento() +Antigüedad()
Codificación Clase base using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Problema1 class Trabajador //Declaración de variables. private double Salario, Sueldo, PagoHora; private int Horas, Departamento, Años; //Constructor public Trabajador() this.salario = 0.0; this.sueldo = 0.0; this.horas = 0; this.departamento = 0; this.años = 0; this.pagohora = 0.0; //Propiedades. public double P_PagoHora set PagoHora = value; get return PagoHora; public int P_Años set Años = value; get return Años; public double P_Salario set Salario = value; get return Salario; public int P_Horas set Horas = value; get return Horas; public int P_Departamento set Departamento = value; get return Departamento; public void CalcularSalario() Salario = Horas * PagoHora; Console.WriteLine("Su salario es: " + Salario); //Fin de método calcular salario.
public void IncrementoDeDepartamento() if (Departamento == 1) Console.WriteLine("Incremento por departamento."); Console.WriteLine("1) Informática"); Sueldo = Salario *.20 + Salario; Console.WriteLine("Su salario total con incremento es: " + Sueldo.ToString()); else if (Departamento == 2) Console.WriteLine("2) Mantenimiento"); Sueldo = Salario *.10 + Salario; Console.WriteLine("Su salario total con incremento es: " + Sueldo.ToString()); //Fin del método IncrementoDeDepartamento(). public void Antigüedad() double Total; if (Años > 10) Console.WriteLine("Bonificación por antigüedad."); Total = Sueldo + 3000; Console.WriteLine("Su sueldo mas bonificación por antigüedad: " + Total.ToString()); else if (Años < 10) Console.WriteLine("No cuenta con bonificación."); //Fin de método Antigüedad. //Fin de class Trabajador. //Fin de namespace.
Clase program using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Problema1 class Program static void Main(string[] args) //Creación de objetos. Trabajador Trabajador1 = new Trabajador(); Trabajador Trabajador2 = new Trabajador(); Trabajador Trabajador3 = new Trabajador(); Console.WriteLine("Programa para mostrar el salario más incremento por departamento y/o bonificación por antigüedad."); Console.WriteLine("1) Informática"); Console.WriteLine("2) Mantenimiento"); Console.WriteLine("Ingrese el número de su departamento:"); Trabajador1.P_Departamento= Convert.ToInt16(Console.ReadLine()); Console.WriteLine("Ingrese el pago por hora:"); Trabajador1.P_PagoHora = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Ingrese el número de horas trabajadas:"); Trabajador1.P_Horas = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Ingrese el número de años que ha trabajado:"); Trabajador1.P_Años = Convert.ToInt32(Console.ReadLine()); //Invocando métodos. Trabajador1.CalcularSalario(); Trabajador1.IncrementoDeDepartamento(); Trabajador1.Antigüedad(); Console.ReadLine(); //Creación de objetos. Console.WriteLine("Programa para mostrar el salario más incremento por departamento y/o bonificación por antigüedad."); Console.WriteLine("1) Informática"); Console.WriteLine("2) Mantenimiento"); Console.WriteLine("Ingrese el número de su departamento:"); Trabajador2.P_Departamento = Convert.ToInt16(Console.ReadLine()); Console.WriteLine("Ingrese el pago por hora:"); Trabajador2.P_PagoHora = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Ingrese el número de horas trabajadas:"); Trabajador2.P_Horas = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Ingrese el número de años que ha trabajado:"); Trabajador2.P_Años = Convert.ToInt32(Console.ReadLine()); //Invocando métodos. Trabajador2.CalcularSalario(); Trabajador2.IncrementoDeDepartamento(); Trabajador2.Antigüedad(); Console.ReadLine(); //Creación de objetos.
Console.WriteLine("Programa para mostrar el salario más incremento por departamento y/o bonificación por antigüedad."); Console.WriteLine("1) Informática"); Console.WriteLine("2) Mantenimiento"); Console.WriteLine("Ingrese el número de su departamento:"); Trabajador3.P_Departamento = Convert.ToInt16(Console.ReadLine()); Console.WriteLine("Ingrese el pago por hora:"); Trabajador3.P_PagoHora = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Ingrese el número de horas trabajadas:"); Trabajador3.P_Horas = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Ingrese el número de años que ha trabajado:"); Trabajador3.P_Años = Convert.ToInt32(Console.ReadLine()); //Invocando métodos. Trabajador3.CalcularSalario(); Trabajador3.IncrementoDeDepartamento(); Trabajador3.Antigüedad(); Console.ReadLine(); //Fin de static void Main. //Fin de class Program. //Fin de namespace.
Ejecuciones