En aquest tema, explorarem els diferents tipus de dades que es poden utilitzar en COBOL. Entendre els tipus de dades és fonamental per escriure programes eficients i efectius. COBOL ofereix una varietat de tipus de dades per gestionar diferents tipus d'informació.

Tipus de Dades Bàsics

  1. Númerics

Els tipus de dades numèrics s'utilitzen per representar valors numèrics. Hi ha dos tipus principals de dades numèriques en COBOL:

  • COMP-1 (Floating Point Single Precision): Utilitzat per a valors de punt flotant de precisió simple.
  • COMP-2 (Floating Point Double Precision): Utilitzat per a valors de punt flotant de precisió doble.
  • COMP-3 (Packed Decimal): Utilitzat per a valors decimals empaquetats, que ocupen menys espai de memòria.
  • COMP-4 i COMP-5 (Binary): Utilitzats per a valors binaris.

  1. Alfanumèrics

Els tipus de dades alfanumèrics s'utilitzen per representar cadenes de caràcters. Els tipus principals són:

  • PIC X(n): Representa una cadena de caràcters de longitud n.
  • PIC A(n): Representa una cadena de caràcters alfabètics de longitud n.

  1. Alfabètics

Els tipus de dades alfabètics s'utilitzen per representar només caràcters alfabètics (A-Z). El tipus principal és:

  • PIC A(n): Representa una cadena de caràcters alfabètics de longitud n.

  1. Numèrics Editats

Els tipus de dades numèrics editats s'utilitzen per a la presentació de dades numèriques amb formats específics. Alguns exemples són:

  • PIC 9(n): Representa un número de longitud n.
  • PIC 9(n)V9(m): Representa un número amb n dígits abans del punt decimal i m dígits després del punt decimal.

Declaració de Variables

Les variables en COBOL es declaren a la secció de dades del programa. Aquí teniu alguns exemples de declaracions de variables:

DATA DIVISION.
WORKING-STORAGE SECTION.
01  EMPLOYEE-NAME    PIC X(30).
01  EMPLOYEE-ID      PIC 9(5).
01  EMPLOYEE-SALARY  PIC 9(7)V99.
01  EMPLOYEE-AGE     PIC 99.

Explicació del Codi

  • EMPLOYEE-NAME: Una cadena de caràcters de 30 posicions.
  • EMPLOYEE-ID: Un número de 5 dígits.
  • EMPLOYEE-SALARY: Un número amb 7 dígits abans del punt decimal i 2 dígits després del punt decimal.
  • EMPLOYEE-AGE: Un número de 2 dígits.

Exemples Pràctics

Exemple 1: Declaració i Assignació de Variables

DATA DIVISION.
WORKING-STORAGE SECTION.
01  STUDENT-NAME    PIC X(20).
01  STUDENT-AGE     PIC 99.
01  STUDENT-GRADE   PIC 9V99.

PROCEDURE DIVISION.
    MOVE "John Doe" TO STUDENT-NAME.
    MOVE 21 TO STUDENT-AGE.
    MOVE 3.75 TO STUDENT-GRADE.

Exemple 2: Operacions amb Variables Numèriques

DATA DIVISION.
WORKING-STORAGE SECTION.
01  NUM1    PIC 9(3) VALUE 100.
01  NUM2    PIC 9(3) VALUE 200.
01  RESULT  PIC 9(4).

PROCEDURE DIVISION.
    ADD NUM1 TO NUM2 GIVING RESULT.
    DISPLAY "The result is: " RESULT.

Exercicis Pràctics

Exercici 1: Declaració de Variables

Declara les següents variables en COBOL:

  • Un nom de producte de 50 caràcters.
  • Un codi de producte de 10 dígits.
  • Un preu de producte amb 5 dígits abans del punt decimal i 2 dígits després del punt decimal.

Solució

DATA DIVISION.
WORKING-STORAGE SECTION.
01  PRODUCT-NAME    PIC X(50).
01  PRODUCT-CODE    PIC 9(10).
01  PRODUCT-PRICE   PIC 9(5)V99.

Exercici 2: Operacions Aritmètiques

Declara dues variables numèriques i calcula la seva suma, resta, multiplicació i divisió. Mostra els resultats.

Solució

DATA DIVISION.
WORKING-STORAGE SECTION.
01  NUM1    PIC 9(3) VALUE 50.
01  NUM2    PIC 9(3) VALUE 25.
01  SUM     PIC 9(4).
01  DIFF    PIC 9(4).
01  PROD    PIC 9(4).
01  QUOT    PIC 9(4).

PROCEDURE DIVISION.
    ADD NUM1 TO NUM2 GIVING SUM.
    SUBTRACT NUM2 FROM NUM1 GIVING DIFF.
    MULTIPLY NUM1 BY NUM2 GIVING PROD.
    DIVIDE NUM1 BY NUM2 GIVING QUOT.

    DISPLAY "Sum: " SUM.
    DISPLAY "Difference: " DIFF.
    DISPLAY "Product: " PROD.
    DISPLAY "Quotient: " QUOT.

Conclusió

En aquest tema, hem après sobre els diferents tipus de dades en COBOL i com declarar i utilitzar variables. Hem vist exemples pràctics i hem realitzat exercicis per reforçar els conceptes apresos. En el proper tema, explorarem les variables i constants en COBOL amb més detall.

© Copyright 2024. Tots els drets reservats