• Asignatura: Informática
  • Autor: juanmanuel04897
  • hace 6 años

Desarrolle un algoritmo para leer el nombre de un empleado, el salario básico por hora y el número de horas trabajadas durante una semana. Calcule el salario neto, teniendo en cuenta que si el número de horas trabajadas durante la semana es mayor de 48 horas, esas horas demás se consideran horas extras y tienen un recargo del 35%. Imprima el nombre del empleado y su salario neto.


segurarodriguezjose: en que lenguaje? en phyton a lo mejor puedo ayudar

Respuestas

Respuesta dada por: jcflores13
2

Respuesta:

{* Respuesta en Pseudocódigo tipo SQL.

Se asume un acceso directo a una bdd con el registro del empleado en la estructura, mismo que es denormalizado en una sola tabla:

empleado    cadenavariable (40),

honorario_hora            moneda,

horaslunes                     entero,          

horasmartes                   entero,

horasmiercoles               entero,

horasjueves                    entero,

horasviernes                    entero

*}

Declara @NombreEmpleado       cadenavariable (40),

             @Salario                           moneda,

             @HorasTrabajadas          entero,

Abrir cursor

En Cursor de lectura 1 a 1

  Select  @NombreEmpleado = empleado, @Salario  = honorario_hora,  @HorasTrabajadas =  (horaslunes + horasmartes + horasmiercoles + horasjueves + horasviernes)

Si (@HorasTrabajadas > 48)

 SET @Salario = @Salario * 48 + @Salario * (@HorasTrabajadas -48) * 1.35

CASO CONTRARIO

  SET @Salario = @Salario * @HorasTrabajadas

select @NombreEmpleado, @Salario   {* resultado *}

Siguiente registro

cierra cursor

Explicación:

en bdd, los datos se almacenan en estructuras de datos como tablas estructuradas, lo cual genera simplificación en el manejo de datos

la lectura, modificación y eliminación se benefician

este Algoritmo asume el uso de manejadores de bases de datos.

Otras soluciones que consideren usar archivos planos o ingreso de datos por teclado y lenguajes de programación de propósito general pueden incluir procesos de:

1. Abrir archivo y leer datos. similar a lectura de las tablas de la base de datos

2. procesar la información leida una a una

3. ejecutar cálculos, de manera similar al algoritmo mostrado

segunda opción. Ingreso de datos por teclado

1. Leer uno a uno los datos suministrados por el operador de la computadora, algo como

leer NombreEmp

leer MontoHora

en un bucle leer horas de lunes a viernes en variable nuevoDato

     acumular horasDia = horasDia + nuevoDato

sumar las horas de lunes a viernes.

esta parte puede hacerse en el bucle de lectura o posterior, al sumar uno a uno los datos obtenidos

2. procesar lógica

si horasDia > 48 entonces

Salario = montoHora* 48 + montoHora* (horasDia -48) * 1.35

caso contrario

Salario = Salario * horasDia

   

Preguntas similares