Está en la página 1de 9

Universidad Nacional del Santa Facultad de Ingeniera E.A.P.

de Ingeniera de Sistemas emas e Informtica

FUNDAMENTOS DE PROGRAMACIN

La estructura selectiva doble perm rmite elegir entre dos opciones o alternativas, vas, en funcin del cumplimiento de una determinada nada condicin, de tal forma que, si se cumple, se ejecutan las acciones del primer bloque; si no se cumple, se ejecutan las acciones del l segundo bloque. La representacin grfica de una estructura e selectiva doble en los mtodos para representar a los algoritmos es el siguiente:

si cond condicin entonces instruccin 1 instruccin 2 . . instruccin n si_no instruccin 1 instruccin 2 . . instruccin m fin_si

De acuerdo a la condicin podemos os realizar actividades por el lado verdadero o por el lado falso, PERO NUNCA se realizan las acti ividades de ambos lados al mismo tiempo.

Universidad Nacional del Santa Facultad de Ingeniera E.A.P. de Ingeniera de Sistemas emas e Informtica

FUNDAMENTOS DE PROGRAMACIN

Ahora pondremos en prctica los os nuevos conocimientos adquiridos solucionan ndo el siguiente ejemplo: Ejemplo 3: Realizar un algoritmo que lea dos nmeros enteros distintos entre s y mostrar ar por pantalla el mayor y el menor. Al final del algorit itmo mostrar tambin el nombre del creador del algoritmo.

Universidad Nacional del Santa Facultad de Ingeniera E.A.P. de Ingeniera de Sistemas e Informtica

FUNDAMENTOS DE PROGRAMACIN

algoritmo Ejemplo3 var entero : num1, num2 inicio leer (num1, num2) si (num1 > num2) entonces escribir(El mayor es, num1, y el menor es, num2) si_no escribir(El mayor es, num2, y el menor es, num1) fin_si escribir(Mi nombre es Maverick) fin

Ejemplodeautoaprendizaje: Resuelva en diagrama de flujo, estructurado y pseudocdigo. Ejemplo 4: Realizar un algoritmo que permita el ingreso de tres notas de un alumno. Calcular la nota promedio y si el promedio es mayor o igual a 10.5 mostrar un mensaje Aprobado Desaprobado.

Universidad Nacional del Santa Facultad de Ingeniera E.A.P. de Ingeniera de Sistemas emas e Informtica

FUNDAMENTOS DE PROGRAMACIN

Con frecuencia en la prctica se presentan p ms de dos elecciones posibles es de una cierta condicin. La estructura selectiva mltiple m se utiliza para este tipo de problemas, as, es decir, que la estructura selectiva mltiple evalua uar una expresin que podr tomar n valores di istintos;: 1, 2, 3, 4,..., n. Segn qu elija uno de estos os valores en la condicin, se realizar una de las n acciones, o lo que es igual, el flujo del algoritmo o seguir un determinado camino entre los n posibles. po La representacin grfica de una estructura selectiva doble en las tres es herramientas he de programacin es la siguiente:

Universidad Nacional del Santa Facultad de Ingeniera E.A.P. de Ingeniera de Sistemas e Informtica

FUNDAMENTOS DE PROGRAMACIN

en caso expresin hacer valor 1: instruccin 1 instruccin 2 ........ valor 2: instruccin 1 instruccin 2 ........ valor 3: instruccin 1 . instruccin 2 . ........ . valor n: instruccin 1 instruccin 2 ........ otros : instruccin 1 instruccin 2 ........ fin_caso

En el lugar donde aparece la palabra expresin pondremos lo que nosotros queremos evaluar; puede ser una variable, una instruccin o cualquier cosa que tome diferentes valores. En el lugar de <valor1> o <caso1>, <valor2> o <caso2>, ..., <valor n> o <caso n> pondremos los diferentes valores que pueda tomar la decisin, segn los cuales el programa debe hacer una u otra cosa. Pueden existir tanto valores como a nosotros nos convenga. Esta estructura es muy til en el momento en el que debemos tomar diferentes decisiones de una misma condicin. Ejemplo5: Realizar un algoritmo que lea un nmero que represente el da de la semana y diga qu da es, teniendo en cuenta lo siguiente: (Lunes=1, Martes=2, ..., Domingo=7).

Universidad Nacional del Santa Facultad de Ingeniera E.A.P. de Ingeniera de Sistemas emas e Informtica

FUNDAMENTOS DE PROGRAMACIN

algoritmo Eje emplo5 var entero o : da inicio leer (d da) en caso (da) hacer 1: escribir(Lunes) 2: escribir(Martes) 3: escribir(Mircoles) 4: escribir(Jueves) 5: escribir(Viernes) 6: escribir(Sabado) 7: escribir(Domingo) fin_caso n_caso fin

Ejemplodeautoaprendizaje: Resuelva en diagrama de flujo, estr tructurado y pseudocdigo. Ejemplo6: Escribir un algoritmo que solicite el ingreso de dos nmeros y a continuacin un operador aritmtico (+, -, *, /). El algoritmo debe de calcular el resultado de la operacin selecci ionada.

Universidad Nacional del Santa Facultad de Ingeniera E.A.P. de Ingeniera de Sistemas emas e Informtica

FUNDAMENTOS DE PROGRAMACIN

La estructura selectiva anidada llam mada tambin estructura de decisin anidada, da, v viene hacer una estructura si-entonces que puede contener otra estructura si-entonces, y sta a a su vez a otra estructura si-entonces, y as sucesivamente suces cualquier nmero de veces; dentro de cada estructura pueden existir diferentes instrucciones o acciones.

Universidad Nacional del Santa Facultad de Ingeniera E.A.P. de Ingeniera de Sistemas e Informtica

FUNDAMENTOS DE PROGRAMACIN

si condicin entonces si condicin entonces instruccin 1 instruccin 2 ...... instruccin n fin_si si_no si condicin entonces instruccin 1 instruccin 2 ...... instruccin m si_no instruccin 1 instruccin 2 ...... instruccin m fin_si fin_si

Ejemplo7: Realizar un algoritmo que permita el ingreso de tres notas de un alumno. Calcular la nota promedio e imprima alguno de estos mensajes: a. Si el promedio est entre 20 y 16 mostrar Alumno Excelente b. Si el promedio est entre 15 y 11 mostrar Alumno Regular c. Si el promedio est entre 10 y 6 mostrar Alumno Malo d. Si el promedio est entre 5 y 0 mostrar Alumno Psimo

Universidad Nacional del Santa Facultad de Ingeniera E.A.P. de Ingeniera de Sistemas emas e Informtica

FUNDAMENTOS DE PROGRAMACIN

algoritmo Ejemplo7 var entero : n1, n2, n3, prom inicio leer (n1, n2, n3) prom = (n1+n2+ n1+n2+n3) / 3 si (prom<=5 y prom>=0) entonces escribir ir(Alumno Pesimo) else si (pro om<=10) entonces escribir(Alumno Malo) else si (prom<=15) entonces escribir(Alumno Regular) else si (prom<=20) entonces escribir(Alumno Excelente) else escribir(Promedio desconocido o) fin_si fin_si fin_si fin_si fin