Variables
Una variable en un algoritmo computacional es una posición de memoria donde se puede almacenar información. Por ejemplo, si un programa debe obtener el área de un triángulo, seguramente la base del mismo y su altura se carguen en memoria en dos variables para poder realizar el cálculo. El resultado, probablemente también se asigne en una variable luego del cálculo para luego informarlo al usuario. Como su nombre lo indica, el valor almacenado en una variable puede ir variando a medida que el programa avanza. En un pseudocódigo el concepto es similar. Una variable representa un lugar donde guardar cierta información.
En un algoritmo o programa se hace referencia a una variable mediante un identificador (el nombre de la variable). Un identificador debe comenzar con letras, y puede contener solo letras, números y el guión bajo. No puede contener ni espacios ni operadores, ni coincidir con una palabra reservada o función del lenguaje, para no generar ambigüedad. Ejemplos de identificadores válidos son: A, B, C, Lado1, Total, Nombre_y_Apellido, DireccionCorreo, ... En la mayoría de los lenguajes reales los nombres de variables no pueden contener acentos, ni diéresis, ni eñes. En PSeInt, esto se permite, dependiendo del perfil de lenguaje seleccionado.
En PSeInt las variables tienen un tipo de dato asociado, por lo que durante la ejecución del algoritmo una variable deberá guardar datos siempre del mismo tipo. Por ejemplo, si una variable se utiliza para guardar números, no puede utilizarse luego para guardar texto. Puede declarar explícitamente el tipo de una variable con la palabra clave Definir, o puede dejar que el intérprete intente deducirlo a partir de los datos que se guardan en la misma y la forma en que se la utiliza en el algoritmo. Si utiliza el perfil de lenguaje por defecto (Flexible), la definición explicita es opcional, pero se puede configurar el lenguaje para que la sea obligatoria.
Hay dos formas de crear una variable y/o asignarle un valor: la lectura y la asignación. Si se lee o asigna un valor en una variable que no existe, esta se crea. Si la variable ya existía, esta toma el nuevo valor, perdiendo el viejo. Por esto se dice que la asignación y la lectura son acciones destructivas (aunque se debe notar que en la asignación pueden intervenir más de una variable, y solo se destruye el contenido previo de la que se encuentra a la izquierda del signo de asignación). Una vez inicializada, la variable puede utilizarse en cualquier expresión (para realizar un cálculo en una asignación, para mostrar en pantalla, como condición en una estructura de control, etc.)