PRÁCTICA No 21 Diseñar un programa interactivo el cual presente un menú con 5 opciones de figuras geométricas: círculo, rectángulo, triángulo, trapecio y sector. Una vez seleccionada la opción correspondiente, se debe introducir por teclado la información necesaria para realizar el cálculo del área de la respectiva figura. Para una mejor manipulación de la información, el programa debe presentar la siguiente pantalla de trabajo: PANTALLA DE ENTRADA PANTALLA DE SALIDA SOLUCIÓN Para la realización de la presente práctica, se debe utilizar el diagrama de flujo nombrado LAB_21 que se encuentra ubicado en el apéndice en la sección DIAGRAMAS DE FLUJO. De acuerdo al enunciado, el trabajo de selección de la respectiva figura se realiza mediante un menú. La opción así seleccionada permite realizar los cálculos necesarios de acuerdo a las siguientes características: Área de un círculo está dada por: AC R 2 Área de un rectángulo está dada por: AR B H BH 2 A B H Área de un trapecio dada por: ATr 2 R Área de un sector está dada por: AS 2 Área de un triángulo está dada por: AT Tomando como referencia estas ecuaciones necesarias para el cálculo correspondiente, las variables a ser empleadas en el diagrama de flujo, presentan las siguientes características: VARIABLES TAREA A REALIZAR OPC Variable donde se solicita y almacena al opción de cálculo a realizar. R Variable donde se almacena el valor del radio de una figura. B Variable donde se almacena el valor de la base de una figura. H Variable donde se almacena el valor de la altura de una figura. A Variable que permite almacenar el ángulo del sector. D Variable que permite almacenar el valor del área calculado. F Variables para almacenar la ecuación empleada en el cálculo del área. C Variable que almacena el nombre de la figura seleccionada. INICIO @ NO PANTALLA DE ENTRADA OPC SE PRESIONÓ SALIR & OPC IN ['1','2','3','4','5','X'] OPC='2' SI 3 D = B*H F = 'A=B*H' D = B*H/2 F = 'A=B*H/2' C = 'TRIANGULO' SI OPC='4' SI F = 'A=PI*R*R' C = 'RECTANGULO' SI NO D = (A+B)*H/2 NO F = 'A=(A+B)*H/2' C = 'TRAPECIO' B, H D = R*A/2 SI F = 'A=R*A/2' B, H NO OPC='4' OPC='2' R NO OPC='3' D = PI*R*R C = 'CIRCULO' SI OPC='3' NO LA OPCIÓN ELEGIDA NO EXISTE SI OPC='1' NO SI OPC='1' SI NO OPC = UPCASE(OPC) NO OPC<>X C = 'SECTOR' SI A, B, H NO OPC='5' SI PANTALLA DE SALIDA R, A NO & C, F, D 3 FIN @ PANTALLA DE ENTRADA PANTALLA DE SALIDA CODIFICACIÓN LAB_21 PROGRAM PRÁCTICA No 22 Diseñar un programa interactivo de carácter general que permita calcular el valor de la integral b 5 f ( x)dx xe x dx a 2 1 Utilizando el método Cuadratura Gaussiana y que al mismo tiempo permita seleccionar el número de puntos a ser utilizados en el cálculo correspondiente. Para una mejor manipulación de la información y sobre todo de la cantidad de puntos a ser empleados, el programa debe presentar un menú que permita realizar la selección correspondiente de acuerdo al siguiente formato: PANTALLA DE ENTRADA PANTALLA DE SALIDA SOLUCIÓN Para orientar en la solución del problema, la ecuación que utiliza el presente método en la determinación del valor de la integral dependiendo del número de puntos a ser utilizados, en forma general está facilitada por la relación: b a ba f ( x)dx w1 * F ( x1 ) w2 * F ( x2 ) w3 * F ( x3 ) w4 * F ( x4 ) 2 siendo: xi ba ab zi 2 2 y donde: wi , z i son constantes que dependen del número de puntos a ser empleados y: Como se podrá observar, el diagrama así diseñado y enmarcado en el tema desarrollado, empleando solo la sentencia If – Then - Else, muestra la necesidad de utilizar sentencias repetitivas y variables de tipo arreglo, las mismas que permitirían simplificar el trabajo de codificación y al mismo tiempo hacer un diagrama de flujo simplificado y legible. Las variables empleadas en el respectivo diagrama de flujo, realizan las siguientes tareas: VARIABLES TAREA A REALIZAR Li Variable donde se almacena el límite inferior de la integral. Ls Variable donde se almacena el límite superior de la integral. N Variable que señala el número de puntos a ser utilizados. W1, W2, … Nombres de las constantes de la ecuación correspondiente. Z1, Z2, … Nombres de las constantes de la modificación del punto de cálculo. F1, F2, … Variable que permiten almacenar el valor de la función en el punto Zi. X1, X2, … Variables que realizan el cambio de coordenadas requerida por la ecuación. A Variable que almacena el resultado de la integral. INICIO & W3 = 0 W4 = 0 W5 = 0 X1 = (Ls-Li)*Z1/2+(Ls+Li)/2 X2 = (Ls-Li)*Z2/2+(Ls+Li)/2 F1 = X1*EXP(SQR(X1)) F2 = X2*EXP(SQR(X2)) PANTALLA DE ENTRADA Ls, Li NO N NO N in [2,3,4,5,9] NO EXISTE LA OPCIÓN SEÑALADA 2 X3 = (Ls-Li)*Z3/2+(Ls+Li)/2 F3 = X3*EXP(SQR(X3)) SI SI N>3 NO SI N<8 NO N=2 SELECCIONÓ LA OPCIÓN SALIR 1 SI N>2 SI W1 = 0.55555 W3 = W1 W2 = 0.88888 SI N>4 NO SI X4 = (Ls-Li)*Z4/2+(Ls+Li)/2 F4 = X4*EXP(SQR(X4)) W1 = 1 W2 = 1 N=3 NO X5 = (Ls-Li)*Z5/2+(Ls+Li)/2 F5 = X5*EXP(SQR(X5)) NO N =4 SI Z2 = 0.57735 Z1 = -Z2 NO Z3 = 0.77459 Z1 = -Z3 Z2 = 0 W1 = 0.23692 W5 = W1 W2 = 0.47862 W4 = W2 W3 = 0.56888 Z5 = 0.90617 Z1 = -Z5 Z4 = 0.53846 Z2 = -Z4 Z3 = 0 W1 = 0.34785 W4 = W1 W2 = 0.65214 W3 = W2 Z4 = 0.86113 Z1 = -Z4 Z3 = 0.33998 Z2 = -Z3 A = W1*F1+W2*F2+W3*F3+W4*F4+W5*F5 A 2 1 FIN & PANTALLA DE ENTRADA PANTALLA DE SALIDA CODIFICACIÓN LAB_22 PROGRAM