Les sentències condicionals són una part fonamental de qualsevol llenguatge de programació, i COBOL no és una excepció. Aquestes sentències permeten que el programa prengui decisions basades en certes condicions, executant diferents blocs de codi segons el resultat de les condicions avaluades.
Continguts
Introducció a les Sentències Condicionals
Les sentències condicionals en COBOL permeten que el flux del programa canviï segons les condicions especificades. Les dues sentències condicionals principals en COBOL són:
- IF: Utilitzada per a condicions simples i múltiples.
- EVALUATE: Similar a la sentència
switch
en altres llenguatges de programació, permet avaluar múltiples condicions de manera més estructurada.
Sentència IF
La sentència IF
és la més bàsica i s'utilitza per avaluar una condició i executar un bloc de codi si la condició és certa. La sintaxi bàsica és la següent:
Exemples
- Condició Simple:
- Condició amb ELSE:
- Condicions Imbricades:
IF A > B IF A > C DISPLAY 'A és el més gran' ELSE DISPLAY 'C és el més gran' END-IF ELSE DISPLAY 'B és més gran o igual a A' END-IF.
Sentència EVALUATE
La sentència EVALUATE
és més poderosa i flexible que IF
, especialment quan es tracta de múltiples condicions. La sintaxi bàsica és:
EVALUATE subject WHEN condition-1 statement-1 WHEN condition-2 statement-2 WHEN OTHER statement-3 END-EVALUATE.
Exemples
- EVALUATE Simple:
EVALUATE TRUE WHEN A > B DISPLAY 'A és més gran que B' WHEN A = B DISPLAY 'A és igual a B' WHEN OTHER DISPLAY 'A és menor que B' END-EVALUATE.
- EVALUATE amb Múltiples Condicions:
EVALUATE A ALSO B WHEN 1 ALSO 2 DISPLAY 'A és 1 i B és 2' WHEN 3 ALSO 4 DISPLAY 'A és 3 i B és 4' WHEN OTHER DISPLAY 'Cap condició complerta' END-EVALUATE.
Exemples Pràctics
Exemple 1: Determinar si un nombre és positiu, negatiu o zero
IDENTIFICATION DIVISION. PROGRAM-ID. Example1. DATA DIVISION. WORKING-STORAGE SECTION. 01 NUM PIC S9(4). PROCEDURE DIVISION. DISPLAY 'Introdueix un nombre: '. ACCEPT NUM. IF NUM > 0 DISPLAY 'El nombre és positiu' ELSE IF NUM < 0 DISPLAY 'El nombre és negatiu' ELSE DISPLAY 'El nombre és zero' END-IF. STOP RUN.
Exemple 2: Classificació d'una nota
IDENTIFICATION DIVISION. PROGRAM-ID. Example2. DATA DIVISION. WORKING-STORAGE SECTION. 01 GRADE PIC 9(2). PROCEDURE DIVISION. DISPLAY 'Introdueix la nota: '. ACCEPT GRADE. EVALUATE TRUE WHEN GRADE >= 90 DISPLAY 'Excel·lent' WHEN GRADE >= 80 DISPLAY 'Molt Bé' WHEN GRADE >= 70 DISPLAY 'Bé' WHEN GRADE >= 60 DISPLAY 'Suficient' WHEN OTHER DISPLAY 'Insuficient' END-EVALUATE. STOP RUN.
Exercicis Pràctics
Exercici 1: Determinar el major de tres nombres
Escriu un programa COBOL que accepti tres nombres i determini quin és el més gran.
Exercici 2: Classificació d'edats
Escriu un programa COBOL que accepti una edat i classifiqui la persona en una de les següents categories: Nen (0-12), Adolescent (13-17), Adult (18-64), Ancià (65+).
Conclusió
Les sentències condicionals són essencials per controlar el flux d'execució en un programa COBOL. La sentència IF
és útil per a condicions simples, mentre que EVALUATE
proporciona una manera més estructurada de gestionar múltiples condicions. Practicar amb exemples i exercicis ajudarà a consolidar aquests conceptes i a utilitzar-los de manera efectiva en els teus programes COBOL.
Curs de Programació COBOL
Mòdul 1: Introducció al COBOL
- Què és el COBOL?
- Història del COBOL
- Configuració de l'Entorn COBOL
- Estructura Bàsica d'un Programa COBOL
Mòdul 2: Sintaxi Bàsica del COBOL i Tipus de Dades
Mòdul 3: Estructures de Control
Mòdul 4: Treballant amb Dades
- Gestió d'Arxius en COBOL
- Processament d'Arxius Seqüencials
- Processament d'Arxius Indexats
- Processament d'Arxius Relatius
Mòdul 5: Gestió Avançada de Dades
Mòdul 6: Subprogrames i Programació Modular
Mòdul 7: Gestió d'Errors i Depuració
Mòdul 8: COBOL i Bases de Dades
Mòdul 9: Temes Avançats
- COBOL Orientat a Objectes
- COBOL i Serveis Web
- Optimització del Rendiment
- Millors Pràctiques en Programació COBOL