Operaciones Matemáticas con Programas Separados en COBOL
En COBOL, es posible dividir una aplicación en varios programas independientes que realizan tareas específicas. Aquí tienes un ejemplo de cómo dividir el cálculo de operaciones matemáticas básicas (suma, resta, multiplicación y división) en programas separados y luego crear un programa principal que permita al usuario elegir la operación deseada y proporcionar los números necesarios:
Programa 1: Suma de Dos Números
IDENTIFICATION DIVISION. PROGRAM-ID. Suma. DATA DIVISION. LINKAGE SECTION. 01 Numero1 PIC 9(5). 01 Numero2 PIC 9(5). 01 Suma PIC 9(6). PROCEDURE DIVISION USING Numero1, Numero2, Suma. ADD Numero1 TO Numero2 GIVING Suma. DISPLAY 'La suma es: ' Suma. STOP RUN.
Programa 2: Resta de Dos Números
IDENTIFICATION DIVISION. PROGRAM-ID. Resta. DATA DIVISION. LINKAGE SECTION. 01 Numero1 PIC 9(5). 01 Numero2 PIC 9(5). 01 Resta PIC 9(6). PROCEDURE DIVISION USING Numero1, Numero2, Resta. SUBTRACT Numero2 FROM Numero1 GIVING Resta. DISPLAY 'La resta es: ' Resta. STOP RUN.
Programa 3: Multiplicación de Dos Números
IDENTIFICATION DIVISION. PROGRAM-ID. Multiplicacion. DATA DIVISION. LINKAGE SECTION. 01 Numero1 PIC 9(5). 01 Numero2 PIC 9(5). 01 Producto PIC 9(10). PROCEDURE DIVISION USING Numero1, Numero2, Producto. MULTIPLY Numero1 BY Numero2 GIVING Producto. DISPLAY 'El producto es: ' Producto. STOP RUN.
Programa 4: División de Dos Números
IDENTIFICATION DIVISION. PROGRAM-ID. Division. DATA DIVISION. LINKAGE SECTION. 01 Numero1 PIC 9(5). 01 Numero2 PIC 9(5). 01 Cociente PIC 9(5). 01 Resto PIC 9(5). PROCEDURE DIVISION USING Numero1, Numero2, Cociente, Resto. DIVIDE Numero1 BY Numero2 GIVING Cociente REMAINDER Resto. DISPLAY 'El cociente es: ' Cociente. DISPLAY 'El resto es: ' Resto. STOP RUN.
Programa Principal: Selector de Operaciones
IDENTIFICATION DIVISION. PROGRAM-ID. Principal. DATA DIVISION. WORKING-STORAGE SECTION. 01 Operacion PIC X. 01 Numero1 PIC 9(5). 01 Numero2 PIC 9(5). 01 Resultado PIC 9(6). PROCEDURE DIVISION. DISPLAY 'Seleccione una operación:'. DISPLAY 'A - Suma'. DISPLAY 'B - Resta'. DISPLAY 'C - Multiplicación'. DISPLAY 'D - División'. ACCEPT Operacion. MOVE 10 TO Numero1. MOVE 5 TO Numero2. PERFORM ELEGIR-OPERACION. STOP RUN. ELEGIR-OPERACION. EVALUATE Operacion WHEN 'A' OR 'a' CALL 'Suma' USING Numero1, Numero2, Resultado WHEN 'B' OR 'b' CALL 'Resta' USING Numero1, Numero2, Resultado WHEN 'C' OR 'c' CALL 'Multiplicacion' USING Numero1, Numero2, Resultado WHEN 'D' OR 'd' CALL 'Division' USING Numero1, Numero2, Resultado WHEN OTHER DISPLAY 'Operación no válida.' END-EVALUATE.
En este ejemplo, cada programa recibe los números como parámetros de entrada y los devuelve al programa principal con los resultados calculados utilizando la `LINKAGE SECTION`. Esto garantiza una comunicación adecuada entre los programas y el programa principal.
Próximo Paso
Para continuar practicando, podrías expandir este ejemplo agregando más operaciones matemáticas o implementando manejo de errores para casos como la división por cero.
No hay comentarios:
Publicar un comentario