LPP, Condicionales, Procedimientos y Funciones

En este artículo, exploramos un ejercicio desafiante que combina conceptos clave como condicionales, procedimientos y funciones en el contexto de Lenguaje de Programación para Principiantes (LPP). A través de la resolución detallada de un problema práctico, destacamos cómo la modularidad y la estructuración del código facilitan la solución de problemas más complejos.

Ejercicio Práctico de Profundización

En nuestro recorrido de aprendizaje en programación con LPP, hemos cubierto conceptos fundamentales como condicionales, procedimientos y funciones. En este tutorial práctico, fusionaremos estos conocimientos para crear un programa versátil capaz de calcular el área de diferentes figuras geométricas, como círculos, cuadrados y rectángulos.

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!

Ver este vídeo en YouTube.
Amigo! Recuerda ver estos vídeos en PANTALLA COMPLETA y preferiblemente en formato HD para ver correctamente los detalles, Gracias.

Código Fuente

En el siguiente link podrás descargar el código de los ejemplos vistos en el vídeo.

Ejercicio Práctico

En el artículo de hoy, nos sumergiremos en un ejercicio más desafiante que pondrá a prueba nuestras habilidades recién adquiridas. El objetivo es crear un programa capaz de calcular el área de figuras geométricas como el círculo, cuadrado o rectángulo. El programa debe contar con un menú por medio del cual el usuario pueda seleccionar que área desea calcular, si la del círculo, cuadrado o rectángulo. Recuerda que la idea es utilizar procedimientos, funciones y seguramente vas a necesitar condicionales.

A continuación, te presentamos las fórmulas esenciales que necesitarás para calcular el área de las figuras geométricas en el ejercicio:

Fórmulas de Área:

A continuación, te compartimos las fórmulas necesarias para poder calcular el área de las figuras:

Circulo: [math]A = pi * r^2[/math]
Donde [math]r[/math] es el radio y [math]pi = 3.1416[/math].

Cuadrado: [math]A = b^2[/math]
Donde [math]b[/math] es la longitud del lado.

Rectángulo: [math]A = b*h[/math]
Donde [math]b[/math] es la base y [math]h[/math] es la altura.

Solucionando el Ejercicio

Al abordar la solución de nuestro ejercicio, comenzamos por comprender claramente sus requisitos y determinar los componentes esenciales del programa.

Para gestionar la presentación del menú de opciones al usuario, optamos por encapsularlo en un procedimiento.

Para los cálculos de área, elegimos utilizar funciones separadas: una para el círculo, otra para el cuadrado y otra para el rectángulo. La elección de funciones en lugar de procedimientos se basó en la necesidad de obtener resultados de estos procesos o, en otras palabras, de que estas funciones retornaran valores.

Finalmente, en el programa principal, implementamos un condicional que ejecuta la función correspondiente según la elección del usuario.

NOTA: Es importante recordar que los problemas en programación pueden abordarse de diversas maneras. La solución presentada aquí es solo una de las posibles. Te animamos a que intentes resolver el problema por ti mismo y luego compares tu solución con la que se muestra en este artículo.

Declaración de variables:

Se declaran las variables necesarias para almacenar la opción del menú, los valores del radio, resultado, base y altura.

Entero opcion
Real radio, resultado, base, altura

Procedimiento CargarMenu:

Este procedimiento se encarga de mostrar el menú de opciones al usuario y leer la opción seleccionada.

procedimiento CargarMenu(var Entero pMenu)
inicio
  llamar nueva_linea

  escriba "Menu de Opcioines:"
  llamar nueva_linea
  escriba "1. Area de un Circulo."
  llamar nueva_linea
  escriba "2. Area den cuadrado."
  llamar nueva_linea
  escriba "3. Area de un Rectangulo."
  llamar nueva_linea
  escriba "Opcion: "
  lea pMenu

  llamar nueva_linea
fin

Procedimiento GenerarTitulo:

Presenta un título en pantalla según la cadena proporcionada.

procedimiento GenerarTitulo(Cadena[100] pTitulo)
inicio
 
  llamar nueva_linea
  escriba "****************************************************"
  llamar nueva_linea
  escriba "       " + pTitulo
  llamar nueva_linea
  escriba "****************************************************"
  llamar nueva_linea
  
fin

Función – Área del Círculo:

Calcula el área de un círculo basado en el radio proporcionado.

funcion CalcularAreaCirculo(Real pRadio) : Real
Real pi
Real areaCirculo
inicio

  pi <- 3.1416
  areaCirculo <- pi * (pRadio * pRadio)
  retorne areaCirculo

fin

Función – Área del Cuadrado:

Calcula el área de un cuadrado basado en la base proporcionada.

funcion CalcularAreaCuadrado(Real pBase) : Real
Real areaCuadrado
inicio
 
  areaCuadrado <- ( pBase * pBase)

  retorne areaCuadrado

fin

Función – Área del Rectángulo:

Calcula el área de un rectángulo basado en la base y altura proporcionadas.

funcion CalcularAreaRectangulo(Real pBase, Real pAltura) : Real
Real areaRectangulo
inicio

  areaRectangulo <- (pBase * pAltura)
  
  retorne areaRectangulo

fin

Programa Principal:

En el programa principal, realizamos el llamado al procedimiento encargado del menú, luego en un condicional de tipo Caso, evaluamos la opción elegida por el usuario, mostramos un titulo, ejecutamos la función apropiada y mostramos el resultado en pantalla.

inicio

/* menu de seleccion */
llamar CargarMenu(opcion)

/* toma decisiones */
Caso opcion
  1: 
    /* area del circulo */
    llamar GenerarTitulo("Calculo de Area del circulo")
    
    escriba "Ingrese el Radio del circulo: "
    lea radio
    
    resultado <- CalcularAreaCirculo(radio)
    
    escriba "El area del circulo es: "
    escriba resultado
    
  2: 
    /* area del cuadrado*/
    llamar GenerarTitulo("Calculo de Area del cuadrado")
    
    escriba "Ingrese el base del cuadrado: "
    lea base
    
    resultado <- CalcularAreaCuadrado(base)
    
    escriba "El area del cuadrado es: "
    escriba resultado
    
  3:
    /* area del rectangulo */
    llamar GenerarTitulo("Calculo de Area del rectangulo")
    
    escriba "Ingrese la Base del rectangulo: "
    lea base
    
    escriba "Ingrese la Altura del rectangulo: "
    lea altura
    
    resultado <- CalcularAreaRectangulo(base, altura)
    
    escriba "El area del rectangulo es: "
    escriba resultado
    
  sino:
    escriba "Ingreso una opcion no valida."
Fin Caso

fin

Resultado Final:

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.

/* variables globales */
Entero opcion
Real radio, resultado, base, altura

/* procedimiento encargado de presentar en pantalla el menu de opciones */
procedimiento CargarMenu(var Entero pMenu)
inicio
  llamar nueva_linea

  escriba "Menu de Opcioines:"
  llamar nueva_linea
  escriba "1. Area de un Circulo."
  llamar nueva_linea
  escriba "2. Area den cuadrado."
  llamar nueva_linea
  escriba "3. Area de un Rectangulo."
  llamar nueva_linea
  escriba "Opcion: "
  lea pMenu

  llamar nueva_linea
fin

/* procedimiento encargado de presentar en pantalla un titulo segun cadena de entrada */
procedimiento GenerarTitulo(Cadena[100] pTitulo)
inicio
 
  llamar nueva_linea
  escriba "****************************************************"
  llamar nueva_linea
  escriba "       " + pTitulo
  llamar nueva_linea
  escriba "****************************************************"
  llamar nueva_linea
  
fin

/* funcion encargada de realizar el calculo del area de un circulo */
funcion CalcularAreaCirculo(Real pRadio) : Real
Real pi
Real areaCirculo
inicio
  pi <- 3.1416
  areaCirculo <- pi * (pRadio * pRadio)
  retorne areaCirculo
fin

/* funcion encargada de realizar el calculo del area de un cuadrado */
funcion CalcularAreaCuadrado(Real pBase) : Real
Real areaCuadrado
inicio
  areaCuadrado <- ( pBase * pBase)
  retorne areaCuadrado
fin

/* funcion encargada de realizar el calculo del area de un rectangulo */
funcion CalcularAreaRectangulo(Real pBase, Real pAltura) : Real
Real areaRectangulo
inicio
  areaRectangulo <- (pBase * pAltura)
  retorne areaRectangulo
fin

/* programa principal */
inicio

  /* menu de seleccion */
  llamar CargarMenu(opcion)

  /* toma decisiones */
  Caso opcion
    1: 
      /* area del circulo */
      llamar GenerarTitulo("Calculo de Area del circulo")
    
      escriba "Ingrese el Radio del circulo: "
      lea radio
    
      resultado <- CalcularAreaCirculo(radio)
    
      escriba "El area del circulo es: "
      escriba resultado
    
    2: 
      /* area del cuadrado*/
      llamar GenerarTitulo("Calculo de Area del cuadrado")
    
      escriba "Ingrese el base del cuadrado: "
      lea base
    
      resultado <- CalcularAreaCuadrado(base)
    
      escriba "El area del cuadrado es: "
      escriba resultado
    
    3:
      /* area del rectangulo */
      llamar GenerarTitulo("Calculo de Area del rectangulo")
    
      escriba "Ingrese la Base del rectangulo: "
      lea base
    
      escriba "Ingrese la Altura del rectangulo: "
      lea altura
    
      resultado <- CalcularAreaRectangulo(base, altura)
    
      escriba "El area del rectangulo es: "
      escriba resultado
    
    sino:
    escriba "Ingreso una opcion no valida."
  Fin Caso
fin

El programa global es un menú interactivo que permite al usuario seleccionar la figura geométrica de interés y luego solicita los datos necesarios para calcular su área. Los cálculos de área se han encapsulado en funciones para mejorar la modularidad del código y facilitar el mantenimiento. Además, se utiliza un procedimiento para mostrar el menú y otro para generar títulos, lo que mejora la legibilidad del código.

Conclusión

En este artículo, hemos abordado un ejercicio más complejo que requiere la aplicación de conocimientos previos sobre condicionales, procedimientos y funciones en LPP. Al desglosar el problema del cálculo del área de figuras geométricas, hemos demostrado la utilidad de la modularidad y la estructuración del código. La implementación de un menú mediante un procedimiento, combinado con funciones específicas para calcular áreas, ha permitido desarrollar un programa organizado y eficiente.

Es fundamental destacar la versatilidad y claridad que aporta el uso de procedimientos y funciones al enfrentarnos a problemas más desafiantes. La estructuración del código en unidades lógicas facilita la comprensión y mantenimiento del programa. Alentamos a los estudiantes a explorar diversas formas de abordar estos desafíos, aplicando los conceptos aprendidos y fomentando la creatividad en la resolución de problemas programáticos.

Recordemos que en programación, no hay una única solución correcta, y este ejercicio es solo una de las múltiples formas de enfrentar este tipo de problemas. Te invitamos a practicar, experimentar y fortalecer tus habilidades, construyendo sobre los conocimientos adquiridos en este artículo. ¡Adelante con tu aprendizaje en LPP!»

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!

Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

9 + 1 =

ANUNCIOS Y PATROCINIOS