Explorando Registros en LPP
Hoy exploraremos un concepto clave en programación: los Registros. Los registros son estructuras de datos que nos permiten agrupar variables lógicamente relacionadas bajo un mismo nombre. Es una herramienta fundamental para organizar información de manera coherente, similar a cómo lo haríamos con objetos en programación orientada a objetos. A lo largo de este artículo, aprenderás cómo declarar registros, instanciarlos y utilizarlos en tus programas.
Material Audiovisual
Te animamos a explorar nuestro video tutorial. En este material, profundizamos en cada concepto y ejercicio que abordamos en este artículo, ofreciendo una comprensión más detallada. Este video se presenta como un complemento valioso para consolidar tu aprendizaje. ¡No dudes en sumergirte en el contenido visual y fortalecer tus habilidades!
Código Fuente
En el siguiente link podrás descargar el código de los ejemplos vistos en el vídeo.
Qué es un Registro
En LPP, un registro es una estructura de datos que nos permite agrupar variables lógicamente relacionadas, llamadas campos o atributos. Imagina un registro como un conjunto organizado de información sobre un tema específico. Por ejemplo, podríamos tener un registro llamado ‘Vehículo’ que incluya campos como ‘Marca’, ‘Línea’, ‘Color’, ‘Cantidad’ y ‘Valor por Unidad’. De esta manera, podemos organizar y manipular datos de manera más eficiente al representar entidades complejas en nuestros programas.
Declaración, Instancia y Manipulación de Registros
En el contexto de programación en LPP, el uso eficiente de registros implica comprender tres fases fundamentales: declaración, instancia y manipulación.
Declaración de un Registro:
Primero, debemos definir la estructura del registro mediante la declaración. Esto implica especificar los campos o atributos que lo compondrán. La sintaxis se asemeja a la creación de un modelo de datos, estableciendo qué información será almacenada en dicho registro.
registro [nombre_registro]
[campos_atributos]
fin registro
En primer lugar, especificamos el término «registro» seguido por un nombre único que lo identificará en nuestro programa. Este nombre se introduce después de la palabra reservada «registro». Posteriormente, delimitamos los campos o atributos del registro, que representan las variables lógicamente relacionadas entre sí. Cada campo se declara con su tipo de dato y un nombre descriptivo. La sección de declaraciones se cierra con la sentencia «fin registro», indicando el final de la definición del registro.
Instancia de un Registro:
Una vez que hemos definido la estructura, procedemos a crear instancias concretas del registro en la sección de variables del programa. Esta etapa implica asignar un nombre a la variable que representará al registro y, por ende, a la entidad que estamos modelando.
[nombre_registro] [nombre_variable]
Una vez hemos definido la estructura de nuestro registro mediante la declaración, es momento de utilizarlo en nuestro programa a través de la instancia. En esta fase, asignamos un nombre único a nuestra variable de registro.
Manipulación de Propiedades:
Finalmente, podemos manipular las propiedades o atributos del registro, asignando y recuperando valores. Al igual que trabajar con variables convencionales, accedemos a los campos del registro utilizando la notación de punto.
[nombre_variable].[campo_atributo] <- [valor]
Una vez hemos declarado nuestro registro y creado una instancia con un nombre específico, el siguiente paso es interactuar con sus atributos. En el proceso de asignación, podemos establecer valores a los distintos campos del registro, personalizándolo con información relevante.
Ejercicio Propuesto
En este ejercicio, pondremos en práctica el uso de registros en LPP para crear un programa que permita controlar el inventario de vehículos en una tienda. Cada tipo de vehículo estará representado por un registro con atributos como la marca, línea, color, cantidad en existencia y valor unitario.
Este será un ejercicio básico, en el siguiente artículo desarrollaremos un ejercicio más complejo, por el momento vamos a entender como funcionan los Registros.
1. Declaración del Registro:
Se declara un registro llamado rVehiculo
con campos o atributos como marca
, linea
, color
, cantidad
y valorUnidad
.
registro rVehiculo
cadena[100] marca
cadena[100] linea
cadena[50] color
entero cantidad
real valorUnidad
fin registro
La fase inicial en la creación de un programa en LPP que hace uso de registros implica la declaración de los registros que serán utilizados a lo largo del programa. En este caso es necesario un registro, al cual llamamos rVehiculo
.
2. Variables Globales:
Se declara una variable vAutomovil
de tipo rVehiculo
para instanciar el registro. También declaramos una variable llamada valorInventario
de tipo Rea
l, que usaremos más adelante en el programa principal para extraer el valor total del inventario de un tipo de vehículo en especifico.
rVehiculo vAutomovil
Real valorInventario
3. Programa Principal:
Se asignan valores a los atributos del registro vAutomovil
, simulando la existencia de un vehículo en el inventario con marca «Ford», línea «Fiesta», color «Gris», 10 unidades en stock y un valor unitario de $20,000.
inicio
/* asignar valor a los atributos */
vAutomovil.marca <- "Ford"
vAutomovil.linea <- "Fiesta"
vAutomovil.color <- "Gris"
vAutomovil.cantidad <- 10
vAutomovil.valorUnidad <- 20000
En el segmento anterior, observamos como se le asignan valores a un registro. A continuación, en el programa principal vamos a observar cómo podemos extraer información de un registro.
Se accede a los atributos del registro vAutomovil
para realizar operaciones, en este caso, se calcula el valor total del inventario multiplicando la cantidad en stock por el valor unitario y se asigna a valorInventario
. Luego podríamos fácilmente mostrar este valor calculado por medio de un mensaje en pantalla.
/* acceder a los atributos de un registro y realizar operaciones como cualquier otra variable */
valorInventario <- (vAutomovil.cantidad * vAutomovil.valorUnidad)
escriba "Valor total de inventario inicial: $ "
escriba valorInventario
Es posible actualizar o modificar los valores de las propiedades o atributos de un registro. Para ilustrar este proceso, podemos solicitar al usuario que ingrese nuevos datos asociados a la cantidad y valor unitario para el registro en cuestión. La implementación de esta acción se realiza de la siguiente manera:
Se solicita al usuario que ingrese la cantidad actual en inventario y el nuevo valor unitario, y estos valores se asignan a los atributos del registro vAutomovil
.
/* movimiento, asignación de valores a atributos por medio de la instrucción lea */
escriba "Ingrese la cantidad actual de inventario: "
lea vAutomovil.cantidad
escriba "Ingrese el valor unitario: "
lea vAutomovil.valorUnidad
Se recalcula el valor total del inventario con los nuevos valores ingresados y se muestra en pantalla el valor total del inventario final. De esta forma podemos comprobar fácilmente que en el registro si se almacenaron los nuevos valores digitados por el usuario.
/* inventario final, validación de datos contenidos en los atributos del registro */
valorInventario <- (vAutomovil.cantidad * vAutomovil.valorUnidad)
escriba "Valor total de inventario final: $ "
escriba valorInventario
4. Programa Completo:
Habiendo analizado minuciosamente cada componente del programa es hora de ensamblarlo por completo. A continuación, te presentamos la estructura completa del programa, integrando cada una de las partes previamente explicadas.
/* registros */
registro rVehiculo
cadena[100] marca
cadena[100] linea
cadena[50] color
entero cantidad
real valorUnidad
fin registro
/* variables globales */
rVehiculo vAutomovil
Real valorInventario
/* programa principal */
inicio
/* asignar valor a los atributos */
vAutomovil.marca <- "Ford"
vAutomovil.linea <- "Fiesta"
vAutomovil.color <- "Gris"
vAutomovil.cantidad <- 10
vAutomovil.valorUnidad <- 20000
/* acceder a los atributos de un registro y realizar operaciones como cualquier otra variable */
valorInventario <- (vAutomovil.cantidad * vAutomovil.valorUnidad)
escriba "Valor total de inventario inicial: $ "
escriba valorInventario
/* movimiento, asignación de valores a atributos por medio de la instruccion lea */
llamar nueva_linea
llamar nueva_linea
escriba "Ingrese la cantidad actual de inventario: "
lea vAutomovil.cantidad
escriba "Ingrese el valor unitario: "
lea vAutomovil.valorUnidad
llamar nueva_linea
llamar nueva_linea
/* inventario final, validación de datos contenidos en los atributos del registro */
valorInventario <- (vAutomovil.cantidad * vAutomovil.valorUnidad)
escriba "Valor total de inventario inicial: $ "
escriba valorInventario
fin
Conclusión
En este artículo, hemos explorado el fascinante mundo de los registros en LPP, una poderosa herramienta que nos permite estructurar datos de manera organizada.
Aprendimos a declarar, instanciar y manipular registros, aplicando estos conceptos en un ejercicio práctico de control de inventario de vehículos.
Al comprender la importancia y versatilidad de los registros, ampliamos nuestra capacidad para modelar y gestionar información de manera eficiente. Este conocimiento sienta las bases para abordar problemas más complejos y desarrollar programas más robustos en LPP. ¡Sigue practicando y explorando, ya que cada nuevo concepto nos acerca a la maestría en la programación!»
Para un mejor entendimiento, te recomiendo ver el video tutorial relacionado en este artículo. En este video, se explica de forma práctica cada uno de los conceptos y teoría explicada en este artículo. ¡Saludos!