Los principales tipos de datos usados en los lenguajes de programación son:
- Carácter: para almacenar caracteres y cadenas de texto. En algoritmos en pseudocódigo se declaran con la palabra CARACTER.
- Lógicos o booleanos: del tipo Verdadero/Falso. En pseudocódigo se declaran con la palabra BOOLEAN.
- Numéricos: almacenan números sin decimales (ENTERO) o con decimales (REAL).
Se denomina como identificador al nombre que podemos asignar a determinados elementos en el código fuente del programa, como por ejemplo a las variables, funciones, etc.
Para crear un identificador debemos tener en cuenta las siguientes reglas:
- Debe comenzar por una letra, aunque el resto del nombre puede contener también números.
- Se pueden usar tanto mayúsculas como minúsculas, pero ten en cuenta que dependiendo del lenguaje de programación usado, se hace distinción entre ambas. Así pues serían diferentes tres elementos llamados 'Comision', 'comision' y 'COMISION'.
- No se pueden usar tildes.
- También es posible usar el carácter de subrayado '_'.
Algunos identificadores válidos: 'x' , 'el_nombre', 'salario', 'mes1'...
Algunos identificadores no válidos: '3po' (comienza con un número), '3+4' (contiene una carácter no válido), 'comisión' (no se admiten tildes).
Los lenguajes de programación usan internamente algunas palabras, denominadas palabras clave o palabras reservadas que no podemos usar como identificadores.
Por ejemplo, algunas palabras clave o reservadas del lenguaje C son: 'auto', 'break', 'case', 'char', 'const', 'continue', 'default'...
En cualquier lenguaje de programación necesitaremos usar variables y constantes para almacenar determinados valores (los cuales se guardan internamente en una posición de memoria del ordenador) y así poderlos recuperar posteriormente para usarlos en otra parte del código fuente.
Las constantes generalmente se declaran al principio del programa escribiendo su nombre en mayúsculas, y la diferencia entre ellas es que a las constantes se les puede asignar su valor una sola vez, mientras que el valor de las variables puede ser modificado en cualquier punto del código fuente del programa.
Para usar una variable o constante en primer lugar es preciso declararla (crearla) antes de poder inicializarla (darle un valor), pudiéndose hacer ambas cosas en la misma línea del código fuente.
En cuanto al ámbito de una variable, éstas pueden ser variables globales (es posible acceder a ellas desde cualquier parte del programa) o variables locales (son visibles sólo desde determinadas partes de él): así pues, las creadas dentro de una Función, Procedimiento o sentencia de control existen y son accesibles sólo dentro de dicha porción de código fuente.
A continuación veamos un ejemplo de cómo declarar variables y declarar constantes en pseudocódigo:
ALGORITMO Variables1;
CONS
PI <- 3,14;
VAR
ENTERO num1;
ENTERO num2 <- 7;
CARACTER nombre, apellidos;
BOOLEAN ok <- ok;
INICIO
num1 <- 5;
nombre <- "PEPE";
apellidos <- "PÉREZ PÉREZ";
FIN
Para asignar un valor en algoritmos en pseudocódigo usamos ' <- ', aunque en otras nomenclaturas se usa el signo igual ' = ' (que es usado también en los lenguajes de programación).
Dentro de CONST declaramos (creamos) la constante 'PI' y la inicializamos (le damos un valor). No es necesario indicar un tipo de datos.
A continuación, dentro de 'VAR' declaramos varias variables de diferentes tipos de datos: a las de la primera y tercera líneas les asignamos un valor dentro del programa en sí (entre INICIO y FIN), mientras que las que se encuentran en la segunda y cuarta líneas las inicializamos en la misma línea en que las creamos.
Veamos otro ejemplo en el que pedimos al usuario que introduzca su nombre para después mostrárselo por pantalla junto con un saludo:
ALGORITMO Variables2;
VAR
CARACTER nombre;
INICIO
LEER( nombre );
ESCRIBIR("Hola ", nombre );
FIN
Observa que en los algoritmos en pseudocódigo se usa LEER() para solicitar un dato introducido por teclado, y rMenu() para mostrar un texto por pantalla.

Dos errores que se suelen tener cuando se está aprendiendo son el olvidar que cada instrucción en el código termina en punto y coma, y el no poner entre comillas las cadenas de texto, tal y como hemos hecho correctamente al dar nombre a las variables 'nombre' y 'apellidos' del primer ejemplo, y al texto en ESCRIBIR() del segundo ejemplo.
Para que lo comprendas fácilmente, un vector o array (también denominado arreglo) es una variable en la que se pueden almacenar varios valores distintos a la vez.
Al asignarse un valor a variable internamente se reserva un espacio en la memoria del ordenador para guardarlo, mientras que cuando creamos un vector o array podemos indicar cuántas posiciones tendrá, reservándose internamente los espacios en memoria necesarios.
En el siguiente ejemplo te mostramos cómo declarar vectores o arrays en pseudocódigo, y asignarles un valor:
ALGORITMO Vectores;
VAR
ENTERO numeros[5];
CARACTER nombres[10];
INICIO
numeros[0] <- 3;
numeros[1] <- 5;
numeros[2] <- 7;
nombres[0] <- "PEPE";
nombres[2] <- "PEDRO";
FIN
Como puedes comprobar se declaran igual que lasvariables, indicándose de qué tipo de datos son (sólo podrán almacenar valores de dicho tipo en cada una de sus posiciones) a la vez que indicamos su longitud entre corchetes.
Observa también que para asignar un valor a cada elemento del vector o array indicamos entre corchetes su posición o índice y que éste comienza realmente desde cero: por lo tanto las posiciones disponibles en los vectores del ejemplo están entre 0 y 4 en el primero, y 0 y 9 en el segundo.
Esto es así también en muchos lenguajes de programación como Java y C, aunque en otros las posiciones comienzan desde 1 (como en Visual Basic).

Vea también: [ Ejemplos con vectores ]
A continuación listamos los principales tipos de operadores descritos según su orden de precedencia, teniendo en cuenta que para evaluar una expresión primero se calcula el resultado de lo que se halle entre paréntesis (comenzando desde los más interiores):
- Aritméticos unarios:
- Incremento: ++
- Decremento: --
- Aritméticos binarios:
- Incremento: ++
- Decremento: --
- Multiplicación: *
- División: /
- Resto: % , MOD
- Suma: +
- Resta: -
- Relacionales:
- Menor que: <
- Mayor que: >
- Menor o igual a: <=
- Mayor o igual a: >=
- Igual a: ==
- Diferente de: <>
- Lógicos:
- Negación: NOT (!)
- Conjunción: AND (&&)
- Disyunción: OR (||)
- Asignación:
- Asignación: =
- Suma y asignación: +=
- Resta y asignación: -=
- Multiplicación y asignación: *=
- División y asignación: /=
- Módulo (resto) y asignación: %=
Las expresiones representan un cálculo con el fin de obtener un resultado. Los tipos de expresiones existentes son:
- Aritméticas: con las que se obtienen resultados de tipo numérico. Ejemplos:
Expresión Resultado 2 + 3 5 2 + 3 * 5 17 10 MOD 3 1 - Carácter: se obtiene una cadena de texto. Ejemplos:
Expresión Resultado "Don" + " Pedro" "Don Pedro" "Buenos " + "días" + " señores" "Buenos días señores" - Lógicas o booleanas: devuelven valores de tipo Verdadero/Falso.
La siguiente Tabla de la Verdad nos ayudará a evaluar expresiones lógicas:
A B A AND* B A OR B** V V V V V F F V F V F V F F F F Con AND el resultado será Verdadero sólo si ambos lo son, mientras que con OR será Verdadero si uno de ellos o ambos lo son. Ejemplos:
Expresión Resultado 5 < 3 Verdadero (1<5) AND (5<10) Verdadero (5>10) OR ("A" < "B") Verdadero NOT(4<14) Verdadero
Veamos un ejemplo en pseudocódigo en el que se piden dos números al usuario, y se muestran los resultados de sumarlos y restarlos:
ALGORITMO Operaciones_Aritmeticas;
VAR
REAL num1;
REAL num2;
INICIO
LEER( num1, num2 );
ESCRIBIR( "La suma es: ", num1 + num2 );
ESCRIBIR( "La multiplicación es: ", num1 * num2 );
FIN

Ten mucho cuidado con cerrar cada paréntesis que hayas abierto, y en su orden correcto.
FUNCIÓN | DESCRIPCIÓN | ARGUMENTO(S) | DEVUELVE |
---|---|---|---|
ABS(x) | Valor absoluto de x | Entero / Real | Entero / Real |
ARCTAN(x) | Arcotagente de x | Entero / Real | Entero / Real |
COS(x) | Coseno de x | Entero / Real | Entero / Real |
SEN(x) | Seno de x | Entero / Real | Entero / Real |
EXP(x) | Exponencial de x | Entero / Real | Entero / Real |
LN(x) | Logaritmo neperiano | Entero / Real | Entero / Real |
ROUND(x) | Redondeo de x | Real | Entero |
SQR(x) | Cuadrado de x | Entero / Real | Entero / Real |
SQRT(x) | Raíz cuadrada | Entero / Real | Real |
TRUNC(x) | Truncamiento de x | Real | Entero |
MOD | Resto | Entero | Entero |
Ejemplos:
Función | Resultado |
---|---|
ABS(-4) | 4 |
ABS(3) | 3 |
SQR(2) | 4 |
SQR(-3) | 9 |
TRUNC(1.2) | 1 |
TRUNC(-2.3) | 2 |
ROUND(0.7) | 1 |
ROUND(0.5) | 1 |
ROUND(-0.5) | 0 |
Veamos ahora un ejemplo en pseudocódigo en el que se pide un número al usuario y se muestra su raíz cuadrada:
ALGORITMO Funciones_Internas;
VAR
REAL num1;
INICIO
LEER( num1 );
ESCRIBIR( "La raíz cuadrada es: ", SQRT(num1) );
FIN