You are on page 1of 9

PUEBLA I II

Estructura condicional Una instruccin condicional es aquella que nos permite "preguntar" sobre el entorno que nos rodea, pudiendo as actuar segn la respuesta obtenida. Estas respuestas siempre sern Verdaderas o Falsas, pudiendo as tomar, en un principio, dos caminos diferentes. Pongamos un pequeo ejemplo. Imagine que tenemos nuestro robot subiendo las escaleras de la Torre Eiffel y le indicamos lo siguiente: si est en el escaln 200 entonces no contine subiendo, sino continua su ascensin. Como puede ver aqu se nos presenta una condicin y, segn en el punto de la escalera en la que se encuentre, nuestro robot se parar o continuar subiendo. Estructura bsica de una condicin.- En nuestro curso esta estructura condicional se representar de la siguiente manera: Si <CONDICIN> entonces <INSTRUCCIN 1> Si no <INSTRUCCIN 2> Fin Si Le explicaremos lnea a lnea la estructura condicional anterior: -Primera lnea: aparece parte de la estructura condicional y la <CONDICIN>que deseamos evaluar. -Segunda lnea: lugar donde pondremos las instrucciones a realizar en caso que la respuesta a la condicin sea VERDADERA. -Tercera lnea: parte de la estructura condicional que nos divide la parte de las instrucciones a realizar cuando la condicin es verdadera y cuando es falsa. -Cuarta lnea: lugar donde pondremos las instrucciones a realizar en caso que la respuesta a la condicin sea FALSA. -Quinta lnea: parte de la estructura condicional que nos indica el final de la misma. En la siguiente unidad didctica le explicaremos un ejemplo. Las estructuras condicionales comparan una variable contra otro(s)valor (es), para que en base al resultado de esta comparacin, se siga un curso de accin dentro del programa. Cabe mencionar que la comparacin se puede hacer contra otra variable o contra una constante, segn se necesite. Existen tres tipos bsicos, las simples, las dobles y las mltiples. Simples: Las estructuras condicionales simples se les conoce como Tomas de decisin. Estas tomas de decisin tienen la siguiente forma: Pseudocdigo: Diagrama de flujo:

Mltiples: Las estructuras de comparacin mltiples, son tomas de decisin especializadas que permiten comparar una variable contra distintos posibles resultados, ejecutando para cada caso una serie de instrucciones especificas. La forma comn es la siguiente:

Programacin Bsica

PUEBLA I II
Pseudocdigo: Diagrama de flujo:

Sentencia if La forma general de esta sentencia es: if (expresion) sentencia

Figura 1: Sentencia if Si la expresion es verdadera (valor distinto de 0), entonces se ejecuta sentencia. La expresion debe estar entre parntesis. Si sentencia es compuesta tenemos: if (expresion) { sentencia 1 sentencia 2 . sentencia N } Un ejemplo de uso de esta sentencia es el siguiente fragmento de programa, que decide si un nmero es par: int numero = 0, esPar= 0; if ((numero % 2) == 0)

Programacin Bsica

PUEBLA I II
esPar = 1; Dobles: Las estructuras condicionales dobles permiten elegir entre dos opciones o alternativas posibles en funcin del cumplimiento o no de una determinada condicin. Se representa de la siguiente forma: Pseudocdigo: Diagrama de flujo:

Donde: Si:Indica el comando de comparacin Condicin : Indica la condicin a evaluar Entonces : Precede a las acciones a realizar cuando se cumple la condicin Instruccin(es):Son las acciones a realizar cuando se cumple o no la condicin si no :Precede a las acciones a realizar cuando no se cumple la condicin Dependiendo de si la comparacin es cierta o falsa, se pueden realizar una o ms acciones. Sentencia if-else La forma general de esta sentencia es: if (expresion) sentencia 1 else sentencia 2

Figura 2: Sentencia if-else Si expresion es verdadera (valor distinto de 0), entonces se ejecuta sentencia 1; en caso contrario, se ejecuta sentencia 2. Si las sentencias son compuestas se cierran entre { }. Las sentencias pueden ser a su vez sentencias if-else. if (expresion 1) if (expresion 2) S1 else

Programacin Bsica

PUEBLA I II
S2 else S3 Un ejemplo de uso de esta sentencia es el siguiente fragmento de programa, que elige el menor de tres nmeros: float a, b, c, menor; a=2; b=4; c=1; if (a < b) { if (a < c) menor = a; else menor = c; } else { if (b < c) menor = b; else menor = c; }

Mltiples (En caso de): Las estructuras de comparacin mltiples, es una toma de decisin especializada que permiten evaluar una variable con distintos posibles resultados, ejecutando para cada caso una serie de instrucciones especificas. La forma es la siguiente: Pseudocdigo: Diagrama de flujo:

Sentencia switch La forma general de esta sentencia es: switch (expresion) { case exp 1: sentencia 1; sentencia 2; break; case exp 2:

Programacin Bsica

PUEBLA I II
case exp N: sentencia N; break; default: sentencia D; }

Figura 3: Sentencia switch expresion devuelve un valor entero, pero tambin puede ser de tipo char. exp1, ..., exp N representan expresiones constantes de valores enteros, aunque tambin pueden ser caracteres. Un ejemplo de uso de esta sentencia es el siguiente fragmento de programa, que decide si imprime la vocal dada: letra='e'; switch(letra); { case 'a': case 'A': printf(``Es la vocal a\n''); break; case 'e': case 'E': printf(``Es la vocal e\n''); break; case 'i': case 'I': printf(``Es la vocal i\n''); break; case 'o': case 'O': printf(``Es la vocal o\n''); break; case 'u': case 'U': printf(``Es la vocal u\n''); break; default: printf(``Es una consonante\n''); }

Programacin Bsica

PUEBLA I II
Veamos algunos ejemplos donde se aplique todo lo anterior: Realizar un algoritmo en donde se pide la edad del usuario; si es mayor de edad debe aparecer un mensaje indicndolo. Expresarlo en Pseudocdigo y Diagrama de flujos. Pseudocdigo: Diagrama de flujo:

Se pide leer tres notas del alumno, calcular su definitiva en un rango de 0-5 y enviar un mensaje donde diga si el alumno aprob o reprob el curso. Exprese el algoritmo usando Pseudocdigo y diagrama de flujos. Pseudocdigo: INICIO Not1, Not2, Not 3 :REAL Def: REAL LEA Nota1, Nota2, Nota3 Def (Not1 + Not2 + Not3) /3 Si Def < 3 entonces Escriba Reprob el curso Sino Escriba Aprob el curso Fin-Si FIN Diagrama de flujo:

Programacin Bsica

PUEBLA I II

Se desea escribir un algoritmo que pida la altura de una persona, si la altura es menor o igual a 150 cm enve el mensaje: Persona de altura baja; si la altura est entre 151 y 170 escriba el mensaje: Persona de altura media y si la altura es mayor al 171 escriba el mensaje: Persona alta. Exprese el algoritmo usando Pseudocdigo y diagrama de flujos. Pseudocdigo: INICIO Altura: ENTERO ESCRIBA Cul es tu altura? LEA Altura Si Altura <=150 entonces ESCRIBA persona de altura baja Sino Si Altura <=170 entonces ESCRIBA persona de altura media Sino Si Altura>170 ENTONCES ESCRIBA persona alta Fin-Si Fin-Si Fin-Si

Programacin Bsica

PUEBLA I II
FIN Es importante ser ordenado en el cdigo que se escribe! Diagrama de flujo:

Dado un numero entre 1 y 7 escriba su correspondiente da de la semana as: 1- Lunes 2- Martes 3- Mircoles 4- Jueves 5- Viernes 6- Sbado 7- Domingo Exprese el algoritmo usando Pseudocdigo y diagrama de flujos. Pseudocdigo: Pseudocdigo: INICIO Dia: ENTERO ESCRIBA Diga un nmero para escribir su da LEA Dia En-caso-de Dia haga Caso 1: ESCRIBA Lunes Caso 2: ESCRIBA Martes

Programacin Bsica

PUEBLA I II
Caso 3: ESCRIBA Mircoles Caso 4: ESCRIBA Jueves Caso 5: ESCRIBA Viernes Caso 6: ESCRIBA Sbado Caso 7: ESCRIBA Domingo SINO: ESCRIBA Escribi un numero fuera del rango 1-7 Fin-Caso FIN Diagrama de flujo:

Programacin Bsica

You might also like