Trunc y Redondear en PSeInt: Funciones (2026)
Trabajar con números decimales es habitual: promedios, divisiones y porcentajes casi siempre dejan decimales. PSeInt ofrece dos funciones integradas para simplificarlos: Trunc, que trunca (corta) los decimales, y Redondear, que redondea al entero más cercano. En esta guía verás la sintaxis de ambas, en qué se diferencian y un ejemplo completo que las compara lado a lado.
Sintaxis
Trunc(x)
Redondear(x)
Trunc(7.8) // devuelve 7
Redondear(7.8) // devuelve 8
Redondear(7.2) // devuelve 7
Ambas reciben un número (o una expresión que produzca un número) entre paréntesis y devuelven un valor entero. Se usan como cualquier otra función: en una asignación, dentro de un Escribir o como parte de un cálculo.
Explicación
- Trunc(x) trunca los decimales. Simplemente elimina la parte decimal del número, sin importar cuánto valga.
Trunc(7.8)devuelve 7, yTrunc(7.1)también devuelve 7: los decimales se cortan, no se evalúan. - Redondear(x) redondea al entero más cercano. Mira los decimales y elige el entero más próximo:
Redondear(7.8)devuelve 8 porque 7.8 está más cerca de 8, mientras queRedondear(7.2)devuelve 7. - La diferencia clave. Con 7.8,
Truncda 7 yRedondearda 8. Truncar siempre «corta hacia abajo» en números positivos; redondear elige el entero más cercano según los decimales. - El resultado es un entero. Ambas funciones devuelven un valor entero, listo para usar en contadores, índices de arreglos o cualquier lugar donde necesites un número sin decimales.
- Aceptan expresiones. No solo funcionan con números escritos a mano:
Trunc(suma / 5)oRedondear(promedio)son usos totalmente válidos.
Ejemplo completo
Este programa calcula un promedio con decimales y muestra qué devuelve cada función:
Algoritmo Truncar_Y_Redondear
Definir promedio Como Real
Definir t, r Como Entero
promedio <- 8.6
t <- Trunc(promedio)
r <- Redondear(promedio)
Escribir "Promedio original: ", promedio
Escribir "Trunc(8.6) = ", t
Escribir "Redondear(8.6) = ", r
promedio <- 8.3
Escribir "Trunc(8.3) = ", Trunc(promedio)
Escribir "Redondear(8.3) = ", Redondear(promedio)
FinAlgoritmo
La salida será: con 8.6, Trunc devuelve 8 y Redondear devuelve 9; con 8.3, Trunc devuelve 8 y Redondear devuelve 8. Fíjate en que Trunc(8.6) da 8 aunque el decimal sea alto: truncar nunca «sube» el número.
Errores comunes
- Creer que Trunc redondea. No:
Trunc(8.9)devuelve 8, no 9. Si necesitas el entero más cercano, usaRedondear. - Olvidar los paréntesis. Son funciones: se escriben
Trunc(x)yRedondear(x), con el valor entre paréntesis. Sin paréntesis, PSeInt marca error de sintaxis. - Esperar decimales en el resultado. Ambas devuelven enteros. Si guardas el resultado en una variable
Como Realseguirá siendo un número entero (por ejemplo 8, no 8.6).
Ver también
- Sintaxis de PSeInt: guía completa
- ¿Qué es PSeInt?
- Ejercicios resueltos de PSeInt
- Azar en PSeInt: números aleatorios
- MOD en PSeInt: resto de división
- Funcion en PSeInt: sintaxis y retorno de valor
Preguntas frecuentes
