Capítulo 3. Prueba de escritorio 1: l a P S Salida por pantalla 1. Prueba de escritorio 2: l a P S Salida por pantalla 2 35

Informática Capítulo 3 Procesos con estructuras de selección Procesos con estructuras de selección Los procesos lineales vistos en el capítulo anteri

2 downloads 53 Views 74KB Size

Story Transcript

Informática

Capítulo 3 Procesos con estructuras de selección Procesos con estructuras de selección Los procesos lineales vistos en el capítulo anterior permiten solucionar un muy reducido número de problemas, ya que cualquier pequeña complejidad incorporada nos obliga a tomar alguna alternativa de entre varias posibles. Para ello la programación provee varias estructuras de selección, de las cuales estudiaremos la más simple: la decisión con dos ramas de salida, que a pesar de su simplicidad nos permite resolver un numeroso grupo de problemas.

Ejercicio 3.1: Efectuar el diagrama de flujo de un programa que lea el largo l y el ancho a de un rectángulo, y calcule su perímetro P. Si el perímetro P es mayor a 12, que calcule e imprima su superficie S. Fórmulas: Perímetro: P = 2 . ( l + a ) Superficie: S = l . a

Inicio

Prueba de escritorio 1: l a P S 3 2 10

l,a

P=2*(l+a)

P > 12

Salida por pantalla 1

Si

S=l*a

No

Fin

S

Prueba de escritorio 2: l a P S 5 7 24 35 Salida por pantalla 2 35

En este ejercicio nos encontramos con la primera decisión, donde se compara el perímetro P con un valor 12. La condición del diagrama debe ser formulada de manera que pueda tener solamente dos respuestas (Si o No, Verdadero o Falso, etc.) para poder utilizar el gráfico de decisión visto en el capítulo 1. Página 23

Informática En las dos ramas de salida del gráfico de decisión pueden existir procesos, y en algunos casos los procesos se encontrarán en una sola de las ramas. Para esta última situación se sugiere formular la condición de manera que los procesos queden ubicados en la rama del SI, dejando vacía la rama de salida del NO. Esto obedece a facilitar su codificación con la estructura cerrada del IFTHEN como se verá más adelante. Una vez efectuados los procesos de cada rama, las líneas de flujo vuelven a unirse más abajo, en correspondencia con el cierre de la estructura de decisión, y a partir de este cierre continúa una sola línea de flujo. En el Ejercicio 3.1 el cierre de la estructura condicional conduce a la finalización del diagrama de flujo al cumplir lo solicitado por el enunciado. La rama de flujo de la respuesta VERDADERO vuelve a unirse a la rama principal que continúa debajo de la respuesta FALSO. Esta estructura condicional puede repetirse varias veces en forma anidada, respetando este cierre y sin que las ramas de flujo se corten.

Operadores relacionales Los operadores relacionales comparan dos datos del mismo tipo y producen un valor lógico como resultado de la comparación, es decir, son los que producen la respuesta Verdadero o Falso Si o No. En el Ejercicio 3.1 se utilizó el operador relacional > (mayor que), pero se admiten una cantidad de seis operadores de relación, como lo muestra el cuadro siguiente: Operador de relación

Significado

< > = =

Menor que Mayor que Igual a Menor o igual que Mayor o igual que Diferente a

Unión de varias condiciones en un mismo gráfico de decisión El gráfico de decisión estudiado tiene solo dos salidas, por Si o por No, de manera que la pregunta o condición que se formula en su interior debe tener la estructura adecuada que brinde solo dos respuestas posibles. En muchos casos se necesita hacer más de una comparación para tomar una decisión en el flujo del proceso. Estas preguntas simultáneas deben ser combinadas mediante operadores lógicos que funcionan de manera idéntica al álgebra de Boole, ya estudiado en materias anteriores. En el desarrollo del curso es suficiente el aprendizaje de dos operadores lógicos: Y (AND) y O (OR). Los ejemplos siguientes aclaran el uso de estos operadores.

Operador Y (And) x > x1 y x < x2

No

Si

Al igual que en álgebra, la salida por Si se producirá en el caso de que todas las condiciones resulten verdaderas. Es suficiente que una de las condiciones no se cumpla para que el flujo tome la rama del No.

Página 24

Informática

Operador O (Or)

A>5oB>7

En este caso es suficiente que alguna de las condiciones sea verdadera para obtener una salida por la rama del Si. Si todas las condiciones fueran falsas, el flujo continúa por la rama del No.

Si

No

Ejercicio 3.2: Efectuar el diagrama de flujo de un programa que lea tres valores a, b y c, determine si estos valores pueden ser los lados de un triángulo, y en caso afirmativo que calcule la superficie S del triángulo y la imprima. Fórmulas: Para verificar si los valores pertenecen a los lados de un Inicio triángulo utilizamos la siguiente propiedad: a,b,c

p=a+b+c 2

debe ser mayor a todos y a cada uno de los lados

p=(a+b+c)/2

p>a y p>b y p>c

es decir: p>a y p>b y p>c La superficie se calcula con la siguiente fórmula:

Si

S = ( p * (p-a) * (p-b) * (p-c) ) ^ (1/2)

No

S

S

p.( p  a).( p  b).( p  c)

Prueba de escritorio 1: a b c p 10 8 6 12

S 24

Fin

Salida por pantalla 1 24

Prueba de escritorio 2: a b c p 10 2 4 8 Salida por pantalla 2

Página 25

S

Informática

Ejercicio 3.3: Efectuar el diagrama de flujo de un programa que lea dos números a y b, los compare y almacene en dos variables diferentes el mayor y el menor de ellos. Imprimir los resultados. Inicio

Prueba de escritorio: a b mayor menor 10 12 12 10

a,b

a>b

Salida por pantalla Mayor = 12 Menor = 10

Si

No

may or = b

may or = a

menor = a

menor = b

"May or =" , may or "Menor =" , menor

Fin

Página 26

Informática

Ejercicio 3.4: Efectuar el diagrama de flujo de un programa que calcule las raíces x1 y x2 de una ecuación de 2° grado: a.x2 + b.x + c = 0. Inicio

Fórmula:

x1  b  b 2  4ac  x2 2a

a,b, c

d = b ^2 - 4 * a * c

d >= 0

Si

Prueba de escritorio: a b c d 2 10 3 76 8.717798

-0.32055

d = sqr ( d )

x1 = ( - b + d ) / ( 2 * a )

x2 = ( - b - d ) / ( 2 * a )

x1

Salida por pantalla x1 = - 0.32055 x2 = - 4.67945

No

"x1 =" , x1 "x2 =" , x2

Fin

Página 27

x2

-4.67945

Informática

Ejercicios Capítulo 3: 1. Realizar el diagrama de flujo de un programa que lea dos números a y b, e imprima el mayor de ellos. 2. Realizar el diagrama de flujo de un programa que permita leer cuatro números y a continuación imprima el mayor de los cuatro. 3. Realizar el diagrama de flujo de un programa que lea tres números y encuentre si alguno de ellos es igual a la suma de los otros dos. En ese caso, imprimir el número encontrado. 4. Realizar el diagrama de flujo de un programa que lea la nota numérica de un estudiante y asigne una calificación según la siguiente tabla: 90-100 80-89 70-79 60-69 menos de 60

Sobresaliente Distinguido Bueno Aprobado Insuficiente

Imprimir en pantalla la calificación asignada. 5. Realizar el diagrama de flujo de un programa que permita determinar si un número leído por teclado es divisible por 2, por 3 o por 5. Imprimir para cada caso la respuesta. 6. Realizar el diagrama de flujo de un programa que lea dos números A y B, los compare y almacene en dos variables diferentes el mayor y el menor de ellos. Imprimir los resultados. 7. Realizar el diagrama de flujo de un programa que permita determinar si un corredor será seleccionado para participar de una maratón cuyas condiciones son: Para hombres menores a 40 años, el tiempo de calificación debe ser menor a 150 minutos. Para hombres mayores a 40 años, el tiempo de calificación debe ser menor a 175 minutos. Para mujeres, el tiempo de calificación debe ser menor a 180 minutos. El proceso debe permitir ingresar desde el teclado los datos de edad, sexo y tiempo en la prueba de calificación. 8. Realizar el diagrama de flujo de un programa que permita resolver las raíces de la ecuación de segundo grado y=ax2+bx+c contemplando todas sus variantes e imprimir las soluciones obtenidas. x1  b  b 2  4ac  x2 2a

Página 28

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.