Lecciones del módulo (1/2)
Aritmética COBOL
En COBOL, las operaciones matemáticas se pueden realizar tanto a través de verbos específicos (ADD, SUBTRACT, MULTIPLY, DIVIDE) como mediante la instrucción genérica y expresiva COMPUTE.
Operaciones aritméticas con verbos formales
COBOL ofrece instrucciones textuales específicas para cada operación aritmética básica:
1. Suma (ADD)
Añade uno o más valores a una variable.
ADD WS-NUM-A TO WS-NUM-B.
* Equivale a: WS-NUM-B = WS-NUM-B + WS-NUM-A
Si se desea guardar el resultado en una tercera variable sin modificar los operandos originales, se utiliza la cláusula GIVING:
ADD WS-NUM-A TO WS-NUM-B GIVING WS-RESULT.
2. Resta (SUBTRACT)
Resta un valor de otro.
SUBTRACT 10 FROM WS-BALANCE.
SUBTRACT WS-TAX FROM WS-SUBTOTAL GIVING WS-TOTAL.
3. Multiplicación (MULTIPLY) y División (DIVIDE)
Multiplican y dividen valores de manera análoga.
MULTIPLY WS-QTY BY WS-PRICE GIVING WS-TOTAL.
DIVIDE WS-TOTAL BY WS-ITEMS GIVING WS-AVERAGE.
La instrucción COMPUTE
Para expresiones matemáticas complejas, el uso de verbos aritméticos individuales puede resultar largo y difícil de leer. La instrucción COMPUTE permite utilizar operadores matemáticos estándar (+, -, *, /, ** para la potenciación) de manera similar a los lenguajes modernos.
COMPUTE WS-TOTAL = (WS-PRICE * WS-QUANTITY) - WS-DISCOUNT.
Pruébalo tú mismo
Escribe una instrucción en la PROCEDURE DIVISION usando el verbo ADD para sumar WS-NUM-A a WS-NUM-B y almacenar el resultado en WS-RESULT.
Mostrar pista
Usa la sintaxis: ADD WS-NUM-A TO WS-NUM-B GIVING WS-RESULT.
Solución disponible después de 3 intentos
Utiliza la instrucción COMPUTE para calcular el valor de WS-RESULT aplicando la formula: dos veces WS-NUM-A menos WS-NUM-B.
Mostrar pista
Usa espacios alrededor de los operadores * y -: COMPUTE WS-RESULT = (WS-NUM-A * 2) - WS-NUM-B.
Solución disponible después de 3 intentos