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.
- 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).
- Definint Variables
Per definir una variable en CL, utilitzem la comanda DCL
(Declare). La sintaxi bàsica és la següent:
Exemples de Definició de Variables
-
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.
-
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.
-
Variable Lògica:
DCL VAR(&FLAG) TYPE(*LGL)
&FLAG
és el nom de la variable.TYPE(*LGL)
indica que és una variable lògica.
- 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:
Exemples d'Assignació de Valors
-
Assignar un Valor Decimal:
CHGVAR VAR(&NUM) VALUE(123.45)
-
Assignar una Cadena de Text:
CHGVAR VAR(&NOM) VALUE('Joan')
-
Assignar un Valor Lògic:
CHGVAR VAR(&FLAG) VALUE('1') /* 1 per VERITABLE, 0 per FALS */
- 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
- Defineix una variable de caràcter anomenada
&CIUTAT
amb una longitud de 30 caràcters. - Assigna el valor 'Barcelona' a la variable
&CIUTAT
.
Solució:
Exercici 2: Operacions amb Variables
- Defineix dues variables decimals anomenades
&A
i&B
amb longitud 5 i 2 decimals. - Assigna els valors 15.75 i 4.25 a
&A
i&B
respectivament. - Defineix una variable decimal anomenada
&SUMA
per emmagatzemar la suma de&A
i&B
. - 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.
Curs de CL (Llenguatge de Control)
Mòdul 1: Introducció al CL
- Què és el Llenguatge de Control?
- Configuració del Teu Entorn
- Sintaxi i Estructura Bàsiques
- Escrivint el Teu Primer Programa CL
Mòdul 2: Comandes Bàsiques de CL
- Introducció a les Comandes de CL
- Comandes de Gestió de Fitxers
- Comandes de Gestió de Treballs
- Comandes de Gestió del Sistema
Mòdul 3: Variables i Expressions
- Comprenent les Variables
- Definint i Utilitzant Variables
- Expressions i Operadors
- Manipulació de Cadenes
Mòdul 4: Estructures de Control
Mòdul 5: Comandes Avançades de CL
- Operacions Avançades de Fitxers
- Programació Avançada de Treballs
- Comandes de Configuració del Sistema
- Seguretat i Permisos