Utilizar variables en los algoritmos
Empezamos con este código:
Algoritmo saludo
FinAlgoritmo
Espacio publicitario
El comando Definir de PSeInt
El comando Definir
de PSeInt, no aparece en
la sección de comandos, lo tenemos que escribir a mano.
En inglés, definir se traduce como define.
Este comando se utiliza para declarar una variable, sin inicializarla. Puesto que va a ser el usuario el que escriba su propio nombre, necesitamos una variable que no tenga nada escrito por defecto.
En PSeInt, se pueden declarar e inicializar las variables sin utilizar el comando
Definir
. Sin embargo, es buena práctica que lo utilicemos hasta que aprendas un poco más de programación. Así vas tomando buenas costumbres. Verás que cada lenguaje de programación tiene sus propias convenciones.
Algoritmo saludo
Definir nombre Como cadena
FinAlgoritmo
Ahora que ya tenemos la variable declarada, es el momento de trabajar en la siguiente parte del algoritmo.
El comando Asignar de PSeInt
El comando Asignar de PSeInt consta de una variable, un operador de asignación y un valor. Representa las tres partes de una variable que vimos en el capítulo anterior.
En inglés, Asignar se traduce como assign.
Hacemos clic sobre él y nos quedará algo así:
Algoritmo saludo
Definir nombre Como cadena
variable<-expresion
FinAlgoritmo
Donde pone variable
, tienes que ponerle un
nombre
. Yo la voy a llamar nombre, ya que va
a almacenar mi nombre. Si almacenara mi edad, la llamaría
edad
.
Espacio publicitario
La flecha (<-
), representa el símbolo de
asignación, que como expliqué, suele ser el símbolo
=
en casi todos los lenguajes de
programación.
En PSeInt puedes utilizar tanto el operador flecha, como el operador igual para asignar valores a las variables.
¿De qué tipo de dato va a ser el nombre?
Puesto que un nombre es un conjunto de varios caracteres,
el tipo de dato será una cadena de caracteres. Esto se
define en PSeInt como tipo de dato Cadena
.
Algoritmo saludo
Definir nombre Como cadena
nombre <- "Enrique"
FinAlgoritmo
El tipo de dato
Cadena
de PSeInt equivale alstr
de Python. Ambos sirven para guardar cadenas de caracteres en las variables.
El nombre o identificador que le hayas dado a la variable, es importante, porque para usar su valor en cualquier parte del algoritmo, necesitamos llamarla por su nombre.
Una línea más abajo, vamos a utilizar el comando
Escribir
. Aquí, escribiremos una cadena de
caracteres. A esta, le añadiremos el valor de la variable.
Formando así una frase con los dos valores, que se
mostrará en la consola:
Algoritmo saludo
Definir nombre Como cadena
nombre <- "Enrique"
Escribir "Mi nombre es ", nombre
FinAlgoritmo
En la consola aparece todo el conjunto:
El diagrama de flujo, ahora es un poco más complejo, ya que tiene los pasos extra de la variable.
Si te fijas, la variable es un elemento interno del algoritmo, no hay salida ni entrada, ya que se utiliza por el algoritmo únicamente. Sin embargo, su valor está incluido en el mensaje de salida en la consola.
Espacio publicitario
Si te aparece el mensaje así:
Es porque no has añadido un espacio para separar la cadena
de caracteres de Escribir
y el valor añadido
de la variable. Fíjate bien como está mi algoritmo escrito
en la línea 4
.
Palabras reservadas del lenguaje
Todos los lenguajes de programación tienen lo que se
conoce como palabras reservadas del lenguaje. Estas son
las palabras que utiliza un lenguaje de programación para
hacer cosas. Por ejemplo, Escribir
es una
palabra reservada en PSeInt, pero no lo es en Python o en
otros lenguajes de programación. Eso significa que en
PSeInt no podemos utilizar el nombre
Escribir
para una variable. Esto sería
incorrecto:
Algoritmo nombreIncorrecto
Definir Escribir como Cadena
FinAlgoritmo
El error producido es este:
ERROR 48: Identificador no válido (ESCRIBIR).
Nos dice que no podemos utilizar ese identificador como nombre de variable.
Case sensitive
Luego tenemos otro término del inglés que se utiliza para
decir si algún elemento es sensible a mayúsculas y
minúsculas ("case sensitive"). Esto se refiere a si el intérprete o compilador sabe
diferenciar mayúsculas de minúsculas.
La mayoría de lenguajes de programación antiguos no eran
case sensitive. Los modernos, casi todos.
En Python, no es lo mismo escribir
PRINT()
queprint()
. El primero te daría un error, ya que el intérprete lo espera escrito en minúsculas.
PSeInt no es case sensitive. Podemos decir que es case insensitive. No distingue mayúsculas de minúsculas. Estos dos códigos, funcionan igual:
ALGORITMO PRUEBAS
DEFINIR NUM1 COMO CADENA
LEER NUM1
FINALGORITMO
Algoritmo pruebas
Definir num1 Como Cadena
leer num1
FinAlgoritmo
Espacio publicitario
Declarar e inicializar variables en la misma línea
En muchos lenguajes de programación, está permitido
declarar e inicializar las variables en la misma línea. En
Python y en PSeInt esto también es posible.
Veamos el ejemplo con PSeInt. En este caso, no
necesitaremos ni siquiera utilizar Definir
:
Algoritmo pruebas
numero1 = 1
numero2 <- 2
Escribir "Los valores de estas variables son: "numero1, " y ", numero2, "."
FinAlgoritmo
Te he puesto en las líneas 2 y 3, las dos posibles formas de asignar valores a variables en PSeInt. Utiliza la que prefieras.
Espacio publicitario
Espacio publicitario