En este tema, aprenderemos sobre los operadores y las expresiones en RPG. Los operadores son símbolos que indican al compilador que debe realizar una operación matemática, lógica o de manipulación de datos. Las expresiones son combinaciones de variables, constantes y operadores que se evalúan para producir un valor.
Tipos de Operadores
- Operadores Aritméticos
Los operadores aritméticos se utilizan para realizar operaciones matemáticas básicas.
Operador | Descripción | Ejemplo |
---|---|---|
+ |
Suma | A + B |
- |
Resta | A - B |
* |
Multiplicación | A * B |
/ |
División | A / B |
** |
Exponenciación | A ** B |
Ejemplo:
Dcl-S A Int(10); Dcl-S B Int(10); Dcl-S Result Int(10); A = 10; B = 5; Result = A + B; // Result = 15 Result = A - B; // Result = 5 Result = A * B; // Result = 50 Result = A / B; // Result = 2 Result = A ** B; // Result = 100000
- Operadores de Asignación
Los operadores de asignación se utilizan para asignar valores a las variables.
Operador | Descripción | Ejemplo |
---|---|---|
= |
Asignación | A = B |
+= |
Suma y asignación | A += B |
-= |
Resta y asignación | A -= B |
*= |
Multiplicación y asignación | A *= B |
/= |
División y asignación | A /= B |
Ejemplo:
Dcl-S A Int(10); Dcl-S B Int(10); A = 10; B = 5; A += B; // A = 15 A -= B; // A = 10 A *= B; // A = 50 A /= B; // A = 10
- Operadores Relacionales
Los operadores relacionales se utilizan para comparar dos valores.
Operador | Descripción | Ejemplo |
---|---|---|
= |
Igual a | A = B |
<> |
No igual a | A <> B |
< |
Menor que | A < B |
> |
Mayor que | A > B |
<= |
Menor o igual que | A <= B |
>= |
Mayor o igual que | A >= B |
Ejemplo:
Dcl-S A Int(10); Dcl-S B Int(10); Dcl-S Result Ind; A = 10; B = 5; Result = (A = B); // Result = *Off Result = (A <> B); // Result = *On Result = (A < B); // Result = *Off Result = (A > B); // Result = *On Result = (A <= B); // Result = *Off Result = (A >= B); // Result = *On
- Operadores Lógicos
Los operadores lógicos se utilizan para combinar expresiones booleanas.
Operador | Descripción | Ejemplo |
---|---|---|
AND |
Y lógico | A AND B |
OR |
O lógico | A OR B |
NOT |
Negación lógica | NOT A |
Ejemplo:
Dcl-S A Ind; Dcl-S B Ind; Dcl-S Result Ind; A = *On; B = *Off; Result = (A AND B); // Result = *Off Result = (A OR B); // Result = *On Result = (NOT A); // Result = *Off
Expresiones
Las expresiones en RPG son combinaciones de variables, constantes y operadores que se evalúan para producir un valor. Las expresiones pueden ser simples o complejas.
Ejemplo de Expresiones Simples
Dcl-S A Int(10); Dcl-S B Int(10); Dcl-S C Int(10); A = 10; B = 5; C = A + B; // C = 15 C = A - B; // C = 5 C = A * B; // C = 50 C = A / B; // C = 2
Ejemplo de Expresiones Complejas
Dcl-S A Int(10); Dcl-S B Int(10); Dcl-S C Int(10); Dcl-S D Int(10); A = 10; B = 5; C = 2; D = (A + B) * C; // D = 30 D = A + (B * C); // D = 20 D = (A - B) / C; // D = 2
Ejercicios Prácticos
Ejercicio 1
Escribe un programa que calcule el área de un rectángulo. El programa debe solicitar al usuario la longitud y el ancho del rectángulo y luego calcular y mostrar el área.
Solución:
Dcl-S Length Int(10); Dcl-S Width Int(10); Dcl-S Area Int(10); Dsply 'Ingrese la longitud del rectángulo:'; In Length; Dsply 'Ingrese el ancho del rectángulo:'; In Width; Area = Length * Width; Dsply ('El área del rectángulo es: ' + %Char(Area));
Ejercicio 2
Escribe un programa que determine si un número ingresado por el usuario es par o impar.
Solución:
Dcl-S Number Int(10); Dcl-S Result Ind; Dsply 'Ingrese un número:'; In Number; Result = (Number % 2 = 0); If Result; Dsply 'El número es par.'; Else; Dsply 'El número es impar.'; EndIf;
Conclusión
En esta sección, hemos aprendido sobre los diferentes tipos de operadores en RPG y cómo utilizarlos para crear expresiones. Los operadores aritméticos, de asignación, relacionales y lógicos son fundamentales para manipular y evaluar datos en tus programas. Practica con los ejercicios proporcionados para reforzar tu comprensión y prepárate para el siguiente tema, donde exploraremos las estructuras de control en RPG.
Curso de Programación RPG
Módulo 1: Introducción a la Programación RPG
- ¿Qué es RPG?
- Configuración de tu Entorno de Desarrollo
- Sintaxis y Estructura Básica
- Programa Hola Mundo
Módulo 2: Conceptos Básicos
- Tipos de Datos y Variables
- Operadores y Expresiones
- Estructuras de Control
- Funciones y Procedimientos
Módulo 3: Trabajando con Datos
Módulo 4: Técnicas Avanzadas de Programación
Módulo 5: RPG IV y Más Allá
Módulo 6: Integrando RPG con Tecnologías Modernas
Módulo 7: Aplicaciones del Mundo Real
- Construyendo una Aplicación Simple
- Estudio de Caso: Sistema de Gestión de Inventarios
- Estudio de Caso: Sistema de Nómina
- Mejores Prácticas y Revisión de Código