Algoritmo para Calcular Salario Semanal en PSeInt (Guía 2026)
El cálculo de nómina es una de las aplicaciones empresariales más comunes que un programador debe resolver. En este tutorial, desarrollaremos un algoritmo en PSeInt para calcular el salario semanal de un trabajador basándonos en las horas trabajadas y el pago por hora. Aunque la fórmula básica es una simple multiplicación, este ejercicio es perfecto para introducir conceptos como acumuladores, manejo de moneda con variables Reales y, en la sección avanzada, la lógica condicional para calcular Horas Extra (overtime). Este es un pilar fundamental para entender cómo los sistemas ERP procesan pagos en la vida real.
Conceptos Clave para este Ejercicio
Para procesar pagos correctamente, debemos ser precisos con los tipos de datos y las operaciones:
El dinero no es un número entero. Un pago por hora puede ser $15.50 o un salario total $450.75. Por ello, es obligatorio definir las variables de dinero (y usualmente las horas) como Real. Usar enteros provocaría pérdidas de centavos que, a gran escala, son graves errores contables.
En su forma más simple, el salario es Horas * Tarifa (Secuencial). Sin embargo, si el problema implica «Horas Extra» (pagar doble después de las 40 horas), necesitamos usar estructuras Si-Entonces para bifurcar el cálculo.
Análisis del Problema
Para construir el algoritmo, seguiremos el flujo de procesamiento de una nómina estándar:
-
ENTRADA
Datos necesarios del trabajador:
1. Cantidad de horas trabajadas en la semana.
2. Tarifa o precio por hora. -
PROCESO
Multiplicar las horas por la tarifa base.
Fórmula:Salario = Horas * PrecioHora. - SALIDA Desplegar el monto total a pagar, idealmente formateado con texto explicativo.
Código Fuente (Cálculo Básico)
Archivo: SalarioSimple.pscDiagrama de Flujo
⚠️ Errores Comunes al Calcular Pagos
Estos son los fallos más habituales que cometen los estudiantes al diseñar algoritmos de salarios:
Permitir que el usuario ingrese "-10 horas" o un precio de "-50 pesos". Matemáticamente la multiplicación funciona, pero en la lógica de negocios es un error grave. El código siempre debe validar que los números sean positivos.
En muchos países, trabajar más de 40 horas implica un pago doble por el tiempo excedente. Usar la fórmula simple H*P para alguien que trabajó 50 horas resultará en un pago menor al legal, lo cual es incorrecto en ejercicios intermedios.
Reto: Cálculo con Horas Extra (Condicionales)
Vamos a profesionalizar el algoritmo. Si el empleado trabaja más de 40 horas, las primeras 40 se pagan normal y el resto se paga al doble (2x).
Preguntas Frecuentes (FAQ)
¿Cómo puedo restar impuestos al salario?
SalarioNeto <- SalarioBruto * 0.90;.¿Qué pasa si el trabajador falta (0 horas)?
¿Cómo hago para procesar 50 empleados?
Para o Mientras, preguntando al usuario cuántos empleados desea procesar al inicio.¿Puedo agregar bonos de puntualidad?
bono) y súmala al final: SalarioFinal <- SalarioCalculado + bono;.¿Listo para el siguiente nivel?
Domina la lógica de programación con nuestra colección completa.
Ver Más Ejercicios Resueltos