En este tema, aprenderemos cómo manejar la entrada y salida (I/O) en REXX. La entrada y salida son fundamentales para interactuar con el usuario y con otros sistemas. Veremos cómo leer datos del usuario, cómo mostrar información en la pantalla y cómo trabajar con archivos.
Contenido
Entrada desde el Usuario
Para leer datos del usuario en REXX, utilizamos la instrucción PULL
. Esta instrucción espera a que el usuario ingrese una línea de texto y luego almacena esa entrada en una variable.
Ejemplo:
/* Programa REXX para leer la entrada del usuario */ say "Por favor, ingrese su nombre:" pull nombre say "Hola," nombre "!"
Explicación:
say "Por favor, ingrese su nombre:"
: Muestra un mensaje en la pantalla pidiendo al usuario que ingrese su nombre.pull nombre
: Espera a que el usuario ingrese una línea de texto y almacena esa entrada en la variablenombre
.- `say "Hola," nombre "!": Muestra un saludo personalizado utilizando la entrada del usuario.
Salida a la Pantalla
Para mostrar información en la pantalla, utilizamos la instrucción SAY
. Esta instrucción imprime una línea de texto en la consola.
Ejemplo:
Explicación:
say "Este es un mensaje de prueba."
: Imprime el mensaje "Este es un mensaje de prueba." en la pantalla.
Lectura y Escritura de Archivos
REXX proporciona instrucciones para trabajar con archivos, permitiendo leer y escribir datos en ellos.
Escritura en un Archivo:
Para escribir en un archivo, utilizamos la instrucción CALL LINEOUT
.
Ejemplo:
/* Programa REXX para escribir en un archivo */ archivo = "salida.txt" linea = "Este es un texto de prueba." call lineout archivo, linea say "Texto escrito en el archivo" archivo
Explicación:
archivo = "salida.txt"
: Define el nombre del archivo en el que se escribirá.linea = "Este es un texto de prueba."
: Define la línea de texto que se escribirá en el archivo.call lineout archivo, linea
: Escribe la línea de texto en el archivo especificado.say "Texto escrito en el archivo" archivo
: Muestra un mensaje indicando que el texto ha sido escrito en el archivo.
Lectura de un Archivo:
Para leer de un archivo, utilizamos la instrucción CALL LINEIN
.
Ejemplo:
/* Programa REXX para leer de un archivo */ archivo = "salida.txt" linea = linein(archivo) say "Texto leído del archivo:" linea
Explicación:
archivo = "salida.txt"
: Define el nombre del archivo del que se leerá.linea = linein(archivo)
: Lee una línea de texto del archivo especificado y la almacena en la variablelinea
.say "Texto leído del archivo:" linea
: Muestra el texto leído del archivo.
Ejercicios Prácticos
Ejercicio 1:
Escribe un programa que pida al usuario su edad y luego muestre un mensaje indicando cuántos años tendrá en 5 años.
Solución:
/* Programa REXX para calcular la edad futura */ say "Por favor, ingrese su edad:" pull edad edad_futura = edad + 5 say "En 5 años, usted tendrá" edad_futura "años."
Ejercicio 2:
Escribe un programa que lea una lista de nombres de un archivo y los muestre en la pantalla, uno por uno.
Solución:
/* Programa REXX para leer y mostrar nombres de un archivo */ archivo = "nombres.txt" do while lines(archivo) > 0 nombre = linein(archivo) say nombre end
Conclusión
En esta sección, hemos aprendido cómo manejar la entrada y salida en REXX. Hemos visto cómo leer datos del usuario, cómo mostrar información en la pantalla y cómo trabajar con archivos. Estos conceptos son fundamentales para cualquier programa que necesite interactuar con el usuario o con otros sistemas.
En el próximo tema, exploraremos la manipulación básica de cadenas en REXX, lo que nos permitirá trabajar con texto de manera más efectiva.
Curso de Programación REXX
Módulo 1: Introducción a REXX
- ¿Qué es REXX?
- Configuración del Entorno REXX
- Hola Mundo en REXX
- Sintaxis y Estructura Básica
- Variables y Tipos de Datos
Módulo 2: Conceptos Básicos de Programación
- Operadores y Expresiones
- Estructuras de Control: IF/THEN/ELSE
- Bucles: DO y LEAVE
- Entrada y Salida
- Manipulación Básica de Cadenas
Módulo 3: Programación Intermedia en REXX
- Funciones y Subrutinas
- Funciones Integradas
- Manejo de Errores
- Operaciones de Entrada/Salida de Archivos
- Trabajando con Arreglos
Módulo 4: Programación Avanzada en REXX
- Manipulación Avanzada de Cadenas
- Técnicas de Análisis
- Interfaz con Programas Externos
- Macros en REXX
- Optimización del Rendimiento