Contenido del capítulo

En este capítulo, vamos a empezar a practicar con las variables, creando un algoritmo que forme una frase con tu nombre guardado en una variable.

Duración estimada de todo el contenido:
Duración del vídeo:
No hay ejercicios en este capítulo. Contiene 1 vídeo.
Tabla de contenidos
Logo

    Utilizar variables en los algoritmos

    Algoritmo con variables en PSeInt
    Algoritmo con variables en PSeInt

    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.

    Comando Asignar de PSeInt

    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 al str 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:

    Algoritmo utilizando variables en PSeInt

    El diagrama de flujo, ahora es un poco más complejo, ya que tiene los pasos extra de la variable.

    Diagrama de flujo con 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í:

    Espacios en blanco en PSeInt

    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() que print(). 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