[pic 1]
Fundamentos de Programación - Código: 213022
Paso 6
Miguel Ángel Wilches
Código: 1193590427
Docente Componente Práctico
Universidad Nacional Abierta y a Distancia
Escuela de Ciencias Básicas, Tecnología e Ingeniería
Programa de Ingeniería multimedia
CEAD Chiquinquira
Período: 16-01
2023
Escuela de Ciencias Básicas, Tecnología e Ingeniería
Fundamentos de Programación - Código: 213022
Paso 6 Evaluación final POA
Escuela Académica: | ECBTI |
Programa de Formación: | Ingeniería Multimedia |
Fecha del Informe: | 26/05/2023 |
Identificación: | 1193590427 |
Estudiante: | Miguel ángel Wilches julio |
Grupo Campus Virtual: |
|
¿Este producto presentado es inédito y no es tomado de otros trabajos realizados en plataforma? | SI |
| NO |
|
I. Introducción |
Mediante los diferentes conocimientos adquiridos por el transcurso del curso, se dará a conocer el desarrollo del problema seleccionado y así lograr crear un programa funcional
|
II. Tabla 1 |
Problema 4: La empresa Tik Tok desea otorgar una bonificación a una cantidad N de sus empleados, y para ello desea registrar la fecha de nacimiento de cada uno de ellos en su sistema de información. La bonificación se la dará sólo a los empleados mayores de 18 años y menores de 50 años y será un bono de $150.000 en el mes de su cumpleaños. Con estos empleados se debe: ● Sacar el promedio de las edades. ● Publicar una lista desglosada por meses con el número total de empleados que cumplen años en cada mes, y el dinero total pagado en bonos. Finalmente, se debe saber el total de dinero que debe tener la empresa Tik Tok por concepto de bonificación. # | Acción | Código | 1 | Importar la librería system | Using System | 2 | Se determina la clase principal del programa | Class program | 3
| Determina la función main | static void Main(string[] args)
| 4 | El programa solicita al usuario la cantidad de empleados a registrar | Console.WriteLine("Ingrese la cantidad de empleados:"); int n = int.Parse(Console.ReadLine())
| 5 | El programa solicita al usuario la fecha de nacimiento del empleado | Console.WriteLine("Ingrese la cantidad de empleados:"); int n = int.Parse(Console.ReadLine()) | 6 | se calcula el promedio de edades | // Calcular promedio de edades int totalEdades = 0; foreach (DateTime fecha in fechasNacimiento) { int edad = CalcularEdad(fecha); totalEdades += edad; }
| 7 | Se da a conocer el promedio de edades | double promedioEdades = (double)totalEdades / n;
Console.WriteLine($"El promedio de edades es: {promedioEdades}"); | 8 | Se genera la lista desglosada por meses | // Generar lista desglosada por meses Dictionary<int, int> empleadosPorMes = new Dictionary<int, int>(); decimal totalBonos = 0; foreach (DateTime fecha in fechasNacimiento) { if (EsMayorDe18MenorDe50(fecha)) { int mes = fecha.Month; if (empleadosPorMes.ContainsKey(mes)) empleadosPorMes[mes]++; else empleadosPorMes[mes] = 1;
totalBonos += 150000; | 9 | Se da la lista desglosada donde muestra el número, nombre y total de los bonos del empleado | Console.WriteLine("Lista desglosada por meses:"); foreach (KeyValuePair<int, int> entry in empleadosPorMes) { string nombreMes = ObtenerNombreMes(entry.Key); int numEmpleados = entry.Value; Console.WriteLine($"{nombreMes}: {numEmpleados} empleados - Total bonos: {numEmpleados * 150000}");
| 10 | El programa calcula la edad de los empleados | static int CalcularEdad(DateTime fechaNacimiento) { DateTime fechaActual = DateTime.Now; int edad = fechaActual.Year - fechaNacimiento.Year;
if (fechaActual.Month < fechaNacimiento.Month || (fechaActual.Month == fechaNacimiento.Month && fechaActual.Day < fechaNacimiento.Day)) { edad--; }
return edad; | 11 | Mediante su fecha de nacimiento el programa calcula la edad de los empleados para saber quien es mayor de 18 y menor de 50 años | static bool EsMayorDe18MenorDe50(DateTime fechaNacimiento) { int edad = CalcularEdad(fechaNacimiento); return edad > 18 && edad < 50; | 12 | Se obtiene el nombre por el mes | static string ObtenerNombreMes(int numeroMes) { switch (numeroMes) { case 1: return "Enero"; case 2: return "Febrero"; case 3: return "Marzo"; case 4: return "Abril"; case 5: return "Mayo"; case 6: return "Junio"; case 7: return "Julio"; case 8: return "Agosto"; case 9: return "Septiembre"; case 10: return "Octubre"; case 11: return "Noviembre"; case 12: return "Diciembre"; default: return ""; |
|
II. Enlace Videos |
<<Relacione los enlaces de cada video realizado y publicado en YouTube o Vimeo>>
|
IV. Conclusiones |
<<Escriba una conclusión por cada práctica o incluya las dos conclusiones que fueron relacionadas en cada video>>
|
V. Bibliografía |
<<Relacione todas las fuentes consultadas>>
|