En aquest tema, aprendrem com definir i utilitzar variables en el Llenguatge de Control (CL). Les variables són elements fonamentals en qualsevol llenguatge de programació, ja que ens permeten emmagatzemar i manipular dades durant l'execució dels nostres programes.

  1. Què és una Variable?

Una variable és un espai de memòria etiquetat que pot contenir un valor que pot canviar durant l'execució del programa. Les variables tenen un nom, un tipus de dades i un valor.

Tipus de Dades en CL

En CL, els tipus de dades més comuns són:

  • Decimal (DEC): Utilitzat per a nombres enters o decimals.
  • Caràcter (CHAR): Utilitzat per a cadenes de text.
  • Lògic (LGL): Utilitzat per a valors booleans (VERITABLE o FALS).

  1. Definint Variables

Per definir una variable en CL, utilitzem la comanda DCL (Declare). La sintaxi bàsica és la següent:

DCL VAR(&nom_variable) TYPE(*tipus) LEN(longitud)

Exemples de Definició de Variables

  1. Variable Decimal:

    DCL VAR(&NUM) TYPE(*DEC) LEN(5 2)
    
    • &NUM és el nom de la variable.
    • TYPE(*DEC) indica que és una variable decimal.
    • LEN(5 2) especifica que la variable pot tenir fins a 5 dígits, amb 2 dígits després del punt decimal.
  2. Variable de Caràcter:

    DCL VAR(&NOM) TYPE(*CHAR) LEN(20)
    
    • &NOM és el nom de la variable.
    • TYPE(*CHAR) indica que és una variable de caràcter.
    • LEN(20) especifica que la variable pot contenir fins a 20 caràcters.
  3. Variable Lògica:

    DCL VAR(&FLAG) TYPE(*LGL)
    
    • &FLAG és el nom de la variable.
    • TYPE(*LGL) indica que és una variable lògica.

  1. Assignant Valors a les Variables

Per assignar un valor a una variable, utilitzem la comanda CHGVAR (Change Variable). La sintaxi bàsica és la següent:

CHGVAR VAR(&nom_variable) VALUE(valor)

Exemples d'Assignació de Valors

  1. Assignar un Valor Decimal:

    CHGVAR VAR(&NUM) VALUE(123.45)
    
  2. Assignar una Cadena de Text:

    CHGVAR VAR(&NOM) VALUE('Joan')
    
  3. Assignar un Valor Lògic:

    CHGVAR VAR(&FLAG) VALUE('1')  /* 1 per VERITABLE, 0 per FALS */
    

  1. Utilitzant Variables en Comandes

Les variables es poden utilitzar en diverses comandes per realitzar operacions. A continuació, es mostren alguns exemples pràctics.

Exemple 1: Concatenació de Cadenes

DCL VAR(&NOM_COMPLET) TYPE(*CHAR) LEN(40)
DCL VAR(&NOM) TYPE(*CHAR) LEN(20)
DCL VAR(&COGNOM) TYPE(*CHAR) LEN(20)

CHGVAR VAR(&NOM) VALUE('Joan')
CHGVAR VAR(&COGNOM) VALUE('Garcia')
CHGVAR VAR(&NOM_COMPLET) VALUE(&NOM *CAT ' ' *CAT &COGNOM)

Exemple 2: Càlcul Aritmètic

DCL VAR(&NUM1) TYPE(*DEC) LEN(5 2)
DCL VAR(&NUM2) TYPE(*DEC) LEN(5 2)
DCL VAR(&RESULTAT) TYPE(*DEC) LEN(5 2)

CHGVAR VAR(&NUM1) VALUE(10.50)
CHGVAR VAR(&NUM2) VALUE(5.25)
CHGVAR VAR(&RESULTAT) VALUE(&NUM1 + &NUM2)

Exercicis Pràctics

Exercici 1: Definició i Assignació de Variables

  1. Defineix una variable de caràcter anomenada &CIUTAT amb una longitud de 30 caràcters.
  2. Assigna el valor 'Barcelona' a la variable &CIUTAT.

Solució:

DCL VAR(&CIUTAT) TYPE(*CHAR) LEN(30)
CHGVAR VAR(&CIUTAT) VALUE('Barcelona')

Exercici 2: Operacions amb Variables

  1. Defineix dues variables decimals anomenades &A i &B amb longitud 5 i 2 decimals.
  2. Assigna els valors 15.75 i 4.25 a &A i &B respectivament.
  3. Defineix una variable decimal anomenada &SUMA per emmagatzemar la suma de &A i &B.
  4. Calcula la suma de &A i &B i emmagatzema el resultat en &SUMA.

Solució:

DCL VAR(&A) TYPE(*DEC) LEN(5 2)
DCL VAR(&B) TYPE(*DEC) LEN(5 2)
DCL VAR(&SUMA) TYPE(*DEC) LEN(5 2)

CHGVAR VAR(&A) VALUE(15.75)
CHGVAR VAR(&B) VALUE(4.25)
CHGVAR VAR(&SUMA) VALUE(&A + &B)

Conclusió

En aquest tema, hem après com definir i utilitzar variables en CL. Hem vist com assignar valors a les variables i com utilitzar-les en diverses comandes. Les variables són una eina poderosa que ens permeten manipular dades de manera dinàmica en els nostres programes CL. En el proper tema, explorarem les expressions i els operadors per realitzar càlculs i manipulacions més complexes.

© Copyright 2024. Tots els drets reservats