Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Cuadro Analisis Modular
Cuadro Analisis Modular
Proceso:
Terminar.
Tipo:
• Entero
• Real
• Caracter
• Cadena
• Lógico
Entradas: Datos que se leen en el proceso principal, o que son recibidos en los subprocesos.
Salidas: Datos que se imprimen (o muestran) en el proceso principal, o que son regresados (o
retornados) por los subprocesos.
Tener en cuenta:
• La solicitud de datos de entrada en el proceso principal se hace con el verbo Leer.
• La presentación de resultados en el proceso principal se hace con el verbo Imprimir.
• La recepción de datos de entrada en los subprocesos se hace con el verbo Recibir.
• La devolución de datos desde los subprocesos se realiza con el verbo Regresar.
• Se usará el verbo Realizar, el cual debe complementarse con el nombre de la acción a
realizar (que puede ser: asignación, cálculo, incremento, acumulación, concatenación).
• Un subproceso regresa un (y solo uno) valor.
• No usar el verbo Imprimir en los subprocesos.
• La forma de escribir el proceso, debe ser descriptiva.
• Cuando hay decisiones, las instrucciones dentro del “Si” o del “Sino”, van con la
indentación correspondiente.
• Las instrucciones de los ciclos inician con la instrucción: “Procesar para cada ….” y terminan
con una instrucción: “Repetir para el siguiente …”. Las instrucciones al interior del ciclo
deben tener la indentación apropiada.
• El proceso cierra con la instrucción Terminar.
EJEMPLO:
Se tienen dos terrenos de forma rectangular y con diferentes áreas. El precio del metro cuadrado
de tierra es de $ 400 000. A partir de las dimensiones de cada terreno (ancho y largo), en metros,
se quiere construir una solución que permita determinar el área del mayor terreno y su precio de
venta.
A. Proceso principal.
Proceso: principal
Entradas Salidas
Tipo Identificación Tipo Identificación
Real Ancho terreno 1. Real Área mayor.
Real Largo terreno 1. Real Precio terreno mayor.
Real Ancho terreno 2.
Real Largo terreno 2.
Proceso:
Leer Ancho terreno 1, Largo terreno 1, Ancho terreno 2 y Largo terreno 2.
Realizar el cálculo de Área terreno 1, mediante el subproceso calcularArea, pasándole Ancho
terreno 1 y Largo terreno 1.
Realizar el cálculo de Área terreno 2, mediante el subproceso calcularArea, pasándole Ancho
terreno 2 y Largo terreno 2.
Realizar el cálculo de Área mayor, mediante el subproceso calcularAreaMayor, pasándole
Área terreno 1 y Área terreno 2.
Realizar el cálculo de Precio terreno mayor, mediante el subproceso calcularPrecioTerreno,
pasándole Área mayor.
Imprimir Área mayor y Precio terreno mayor.
Terminar.
B. Subproceso calcularArea.
Subproceso: calcularArea
Entradas Salidas
Tipo Identificación Tipo Identificación
Real Ancho. Real Área terreno.
Real Largo.
Proceso:
Recibir Ancho y Largo.
Realizar el cálculo de Área terreno, aplicando la fórmula ( Ancho * Largo ).
Regresar Área terreno.
Terminar.
C. Subproceso calcularAreaMayor.
Subproceso: calcularAreaMayor
Entradas Salidas
Tipo Identificación Tipo Identificación
Real Área terreno 1. Real Área mayor.
Real Área terreno 2.
Proceso:
Recibir Área terreno 1 y Área terreno 2.
D. Subproceso calcularPrecioTerreno.
Subproceso: calcularPrecioTerreno
Entradas Salidas
Tipo Identificación Tipo Identificación
Real Área terreno. Real Precio terreno.
Proceso:
Recibir Área terreno.
Realizar el cálculo de Precio terreno, aplicando la fórmula (400000 * Área terreno ).
Regresar Precio terreno.
Terminar
Implementación en C#, acorde con el Análisis Modular anterior, que resuelve los requerimientos
planteados.
/**
* Se tienen dos terrenos de forma rectangular y con diferentes áreas. El precio del
* metro cuadrado de tierra es de $ 400 000. A partir de las dimensiones de cada
* terreno (ancho y largo), en metros, se quiere construir una solución que permita
* determinar el área del mayor terreno y su precio de venta.
*
*/
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace EjemploDecisionesyCodificacion_2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
// Definición del método que determina la mayor de dos áreas, recibidas como
// parámetros:
public double calcularAreaMayor(double areaTerreno1, double areaTerreno2) {
double areaMayor = 0.0 ;
return areaMayor ;
}