Introducción

En este módulo, aprenderemos sobre las variables en el Lenguaje de Control (CL). Las variables son fundamentales en cualquier lenguaje de programación, ya que nos permiten almacenar y manipular datos. En CL, las variables se utilizan para almacenar valores que pueden cambiar durante la ejecución de un programa.

Conceptos Clave

  1. Definición de Variables: Las variables son espacios de memoria etiquetados que pueden contener datos.
  2. Tipos de Datos: CL soporta varios tipos de datos, incluyendo numéricos, caracteres y fechas.
  3. Declaración de Variables: Antes de usar una variable, debe ser declarada.
  4. Asignación de Valores: Los valores pueden ser asignados a las variables durante la declaración o en cualquier punto del programa.
  5. Ámbito de las Variables: El ámbito determina dónde se puede acceder a una variable dentro del programa.

Tipos de Datos en CL

En CL, los tipos de datos más comunes son:

Tipo de Dato Descripción
CHAR Cadena de caracteres
DEC Número decimal
INT Número entero
DATE Fecha

Declaración de Variables

Para declarar una variable en CL, utilizamos el comando DCL. Aquí hay un ejemplo de cómo declarar diferentes tipos de variables:

DCL VAR(&NOMBRE) TYPE(*CHAR) LEN(50)
DCL VAR(&EDAD) TYPE(*DEC) LEN(3 0)
DCL VAR(&SALARIO) TYPE(*DEC) LEN(7 2)
DCL VAR(&FECHA_CONTRATO) TYPE(*DATE)

Explicación del Código

  • DCL VAR(&NOMBRE) TYPE(*CHAR) LEN(50): Declara una variable de tipo cadena de caracteres con una longitud de 50.
  • DCL VAR(&EDAD) TYPE(*DEC) LEN(3 0): Declara una variable de tipo decimal con 3 dígitos y 0 decimales.
  • DCL VAR(&SALARIO) TYPE(*DEC) LEN(7 2): Declara una variable de tipo decimal con 7 dígitos y 2 decimales.
  • DCL VAR(&FECHA_CONTRATO) TYPE(*DATE): Declara una variable de tipo fecha.

Asignación de Valores

Una vez que una variable ha sido declarada, podemos asignarle un valor utilizando el comando CHGVAR. Aquí hay un ejemplo:

CHGVAR VAR(&NOMBRE) VALUE('Juan Perez')
CHGVAR VAR(&EDAD) VALUE(30)
CHGVAR VAR(&SALARIO) VALUE(45000.50)
CHGVAR VAR(&FECHA_CONTRATO) VALUE('2023-10-01')

Explicación del Código

  • CHGVAR VAR(&NOMBRE) VALUE('Juan Perez'): Asigna el valor 'Juan Perez' a la variable &NOMBRE.
  • CHGVAR VAR(&EDAD) VALUE(30): Asigna el valor 30 a la variable &EDAD.
  • CHGVAR VAR(&SALARIO) VALUE(45000.50): Asigna el valor 45000.50 a la variable &SALARIO.
  • CHGVAR VAR(&FECHA_CONTRATO) VALUE('2023-10-01'): Asigna la fecha '2023-10-01' a la variable &FECHA_CONTRATO.

Ejercicio Práctico

Ejercicio

  1. Declara una variable de tipo cadena de caracteres para almacenar el nombre de un producto.
  2. Declara una variable de tipo decimal para almacenar el precio del producto.
  3. Asigna valores a ambas variables.
  4. Imprime los valores de las variables.

Solución

DCL VAR(&PRODUCTO) TYPE(*CHAR) LEN(30)
DCL VAR(&PRECIO) TYPE(*DEC) LEN(7 2)

CHGVAR VAR(&PRODUCTO) VALUE('Laptop')
CHGVAR VAR(&PRECIO) VALUE(999.99)

SNDPGMMSG MSG('Producto: ' *CAT &PRODUCTO)
SNDPGMMSG MSG('Precio: ' *CAT &PRECIO)

Explicación del Código

  • DCL VAR(&PRODUCTO) TYPE(*CHAR) LEN(30): Declara una variable de tipo cadena de caracteres con una longitud de 30 para almacenar el nombre del producto.
  • DCL VAR(&PRECIO) TYPE(*DEC) LEN(7 2): Declara una variable de tipo decimal con 7 dígitos y 2 decimales para almacenar el precio del producto.
  • CHGVAR VAR(&PRODUCTO) VALUE('Laptop'): Asigna el valor 'Laptop' a la variable &PRODUCTO.
  • CHGVAR VAR(&PRECIO) VALUE(999.99): Asigna el valor 999.99 a la variable &PRECIO.
  • SNDPGMMSG MSG('Producto: ' *CAT &PRODUCTO): Imprime el valor de la variable &PRODUCTO.
  • SNDPGMMSG MSG('Precio: ' *CAT &PRECIO): Imprime el valor de la variable &PRECIO.

Conclusión

En esta sección, hemos aprendido sobre la importancia de las variables en CL, cómo declararlas, asignarles valores y utilizarlas en nuestros programas. Comprender estos conceptos es fundamental para avanzar en el uso del Lenguaje de Control y desarrollar programas más complejos y funcionales.

En el próximo módulo, exploraremos las expresiones y operadores, que nos permitirán realizar cálculos y manipular datos de manera más eficiente.

© Copyright 2024. Todos los derechos reservados