Variables, tipos de datos y operadores

Una variable es un espacio con nombre donde el programa guarda un dato. Cada dato tiene un tipo, como entero, real, texto o lógico, y los operadores sirven para calcular y comparar con esos datos.

Qué es una variable

Imagina una caja con una etiqueta. La etiqueta es el nombre de la variable y lo que hay dentro es su valor. El programa puede ver qué hay en la caja, cambiarlo o usarlo para calcular otra cosa.

Algoritmo area
    base <- 5
    altura <- 3
    area <- base * altura
    Escribir "El área es ", area
FinAlgoritmo

Aquí hay tres variables: base, altura y area. La flecha <- se lee «guarda»: «guarda 5 en base». Una variable guarda un solo valor a la vez. Si le asignas otro, el anterior se pierde.

Los nombres pueden llevar letras, números y guion bajo, pero deben empezar con una letra y no llevar espacios: precio_total sí, precio total no. Conviene que digan qué guardan: edad se entiende mejor que x.

Dar valor a una variable: asignar y leer

Una variable recibe valor de dos formas. Con <-, el programa lo calcula o lo pone. Con Leer, se lo pide a quien usa el programa.

Algoritmo doble
    Escribir "Escribe un número:"
    Leer n
    doble <- n * 2
    Escribir "El doble es ", doble
FinAlgoritmo

Una asignación también puede usar el valor viejo de la misma variable. contador <- contador + 1 significa: toma lo que vale contador, súmale 1 y guarda el resultado otra vez en contador. En matemáticas eso no tiene sentido, pero en programación es de lo más común.

Tipos de datos

Los tipos de datos del pseudocódigo
TipoQué guardaEjemplos
EnteroNúmeros sin decimales7, -3, 2026
RealNúmeros con decimales3.5, 0.16, -2.75
Caracter (o Texto)Letras, palabras, frases"Ana", "A", "5 de mayo"
LógicoVerdadero o falsoVerdadero, Falso

Con Definir dices de qué tipo será una variable antes de usarla. En el pseudocódigo flexible que usan la mayoría de las escuelas no es obligatorio, pero ayuda: si defines una variable como Entero e intentas guardar un número con decimales, Jaguar te avisa.

Algoritmo con_tipos
    Definir nombre Como Caracter
    Definir edad Como Entero
    Definir estatura Como Real
    nombre <- "Luis"
    edad <- 16
    estatura <- 1.72
    Escribir nombre, " tiene ", edad, " años y mide ", estatura
FinAlgoritmo

Los textos siempre van entre comillas. "7" es un texto (el carácter siete) y 7 es un número. La diferencia importa: "7" + "3" da "73", y 7 + 3 da 10.

Operadores aritméticos

Operadores para calcular
OperadorQué haceEjemploResultado
+Suma7 + 310
-Resta7 - 34
*Multiplicación7 * 321
/División10 / 42.5
MODResiduo de la división10 MOD 42
^Potencia2 ^ 101024

MOD merece atención porque aparece en muchos ejercicios. Da lo que sobra de una división: 10 entre 4 es 2 y sobran 2. Sirve para saber si un número es par (n MOD 2 = 0), si es múltiplo de otro o para separar los dígitos de un número.

Como en matemáticas, primero se calculan las potencias, luego multiplicaciones y divisiones, y al final sumas y restas. Los paréntesis cambian ese orden:

Algoritmo prioridad
    Escribir 2 + 3 * 4
    Escribir (2 + 3) * 4
    promedio <- (8 + 9 + 10) / 3
    Escribir "Promedio: ", promedio
FinAlgoritmo

Un error clásico es escribir 8 + 9 + 10 / 3 para un promedio: sin paréntesis solo se divide el 10.

Operadores de comparación y lógicos

Comparar dos valores da un resultado lógico: verdadero o falso. Es lo que usan las decisiones (Si) y los ciclos (Mientras).

Comparación
OperadorSignificaEjemplo verdadero
=Igual a5 = 5
<>Distinto de5 <> 3
< / >Menor que / mayor que3 < 5
<= / >=Menor o igual / mayor o igual5 >= 5

Para combinar comparaciones están Y, O y NO. Con Y, las dos partes deben cumplirse. Con O, basta una. NO invierte el resultado.

Algoritmo rango
    Leer calificacion
    valida <- calificacion >= 0 Y calificacion <= 10
    Escribir "¿Es válida? ", valida
FinAlgoritmo

Las decisiones con estos operadores están explicadas a fondo en la guía de condicionales.

Funciones útiles

El pseudocódigo trae funciones listas para cálculos comunes. Se escribe el nombre y, entre paréntesis, el dato:

Funciones de uso frecuente
FunciónQué haceEjemploResultado
Raiz(x)Raíz cuadradaRaiz(81)9
Abs(x)Valor absolutoAbs(-4)4
Redon(x)Redondea al entero más cercanoRedon(3.6)4
Trunc(x)Quita los decimalesTrunc(3.6)3
Azar(n)Número al azar de 0 a n-1Azar(6) + 1Un dado: de 1 a 6
Longitud(t)Cuántos caracteres tiene un textoLongitud("jaguar")6
Mayusculas(t)Pasa un texto a mayúsculasMayusculas("hola")HOLA
Subcadena(t, i, f)Parte de un texto, de la posición i a la fSubcadena("jaguar", 1, 3)jag
Algoritmo hipotenusa
    Leer a, b
    c <- Raiz(a ^ 2 + b ^ 2)
    Escribir "La hipotenusa mide ", c
FinAlgoritmo

Ejemplo: intercambiar dos variables

Un ejercicio que aparece en casi todos los cursos: intercambiar los valores de a y b. Si escribes a <- b y luego b <- a, pierdes el valor original de a. La solución es una variable auxiliar que lo guarde mientras tanto:

Algoritmo intercambiar
    a <- 3
    b <- 8
    aux <- a
    a <- b
    b <- aux
    Escribir "a = ", a, ", b = ", b
FinAlgoritmo

En la prueba de escritorio se ve cómo aux rescata el 3 antes de que se pierda. Las celdas resaltadas son las que acaban de cambiar:

Prueba de escritorio de intercambiar
PasoLíneaInstrucciónabauxPantalla
13a <- 33
24b <- 838
35aux <- a383
46a <- b883
57b <- aux833
68Escribir "a = ", a, ", b = ", b833a = 8, b = 3

Errores comunes

Estos son los errores con variables que más se repiten, con el mensaje que da Jaguar en cada caso:

  • Usar una variable que no tiene valor. Si escribes p <- (a + b) / 2 y nunca leíste b, Jaguar dice: «No encuentro la variable 'b'». Si hay una parecida, sugiere: «¿Quisiste decir 'a'?».
  • Guardar decimales en un Entero. Con Definir e Como Entero y luego e <- 5 / 2, el mensaje es: «No se puede guardar el número 2.5 en 'e' porque es de tipo Entero», con la sugerencia de usar Trunc() o Redon().
  • Confundir = con <-. La flecha guarda; el igual compara. Algunas escuelas aceptan = para asignar, pero usar la flecha evita confusiones.
  • Olvidar las comillas. Escribir Hola busca una variable llamada Hola. Lo que quieres es Escribir "Hola".
  • Escribir el nombre de dos formas. Promedio y promedio son la misma variable en PSeInt y en Jaguar, pero promedio y promedo no.

Si Jaguar te muestra un mensaje que no entiendes, búscalo en la lista de errores explicados. Por ejemplo, por qué no puedes llamar y a una variable.

Preguntas frecuentes

¿Qué es una variable en pseudocódigo?

Es un espacio con nombre donde el programa guarda un dato, como un número o un texto. Su valor puede cambiar mientras el programa se ejecuta, por eso se llama variable.

¿Qué diferencia hay entre una variable y una constante?

Una variable puede cambiar de valor durante el programa. Una constante es un valor que no cambia, como PI o el porcentaje del IVA. En pseudocódigo, una constante suele ser una variable a la que le das valor una sola vez al inicio.

¿Es obligatorio usar Definir?

En el pseudocódigo flexible de PSeInt, que es el que usan la mayoría de las escuelas, no. Pero si tu profe pide el perfil estricto, sí hay que definir cada variable. Definirla siempre es una buena costumbre.

¿Para qué sirve MOD?

Da el residuo de una división entera. Por ejemplo, 17 MOD 5 es 2, porque 17 entre 5 es 3 y sobran 2. Se usa para saber si un número es par, si es múltiplo de otro o para separar dígitos.

Sigue aprendiendo