Estructuras de seleccion

19.171 visualizaciones

Publicado el

Publicado en: Educación
0 comentarios
1 recomendación
Estadísticas
Notas
  • Sé el primero en comentar

Sin descargas
Visualizaciones
Visualizaciones totales
19.171
En SlideShare
0
De insertados
0
Número de insertados
41
Acciones
Compartido
0
Descargas
150
Comentarios
0
Recomendaciones
1
Insertados 0
No insertados

No hay notas en la diapositiva.

Estructuras de seleccion

  1. 1. ESTRUCTURAS DE SELECCIÓN
  2. 2. ESTRUCTURAS SELECTIVASEn ocasiones un programa debe ser capaz de elegir uno u otro camino, dependiendo del valor de alguna condición evaluada.Para ello C, dispone de tres tipos de 3 tipos de estructuras selectivas, la cuales son: Estructura Selectiva Simple Estructura Selectiva Doble Estructura Selectiva Múltiple
  3. 3. ESTRUCTURA SELECTIVA SIMPLEFunciona de la siguiente manera: se evalúa una condición, de ser cierta efectúa una acción, de lo contrario, continúa con la ejecución normal del programa.Su sintaxis es la siguiente:if(Condición) Acción; Condición: Es una expresión lógica que es evaluada por el compilador Acción: es la Acción o Acciones que realizará el programa de resultar cierta la condición
  4. 4. EJEMPLO:EN UNA TIENDA SE VENDEN ARTÍCULOS DE PRIMERA NECESIDAD, A LOS CUALES SELES APLICA UN DESCUENTO DEL 20%, DE LA COMPRA TOTAL, SI ESTA ES IGUAL OMAYOR A $500. DISEÑE UN PROGRAMA EN C, QUE A PARTIR DEL IMPORTE TOTAL DELA COMPRA MUESTRE LO QUE DEBE PAGAR EL CLIENTE.#include <stdio.h>#include <conio.h>main() { float compra; printf("Introduzca el valor de la compra:n"); scanf("%f", &compra); if(compra>=500) compra=compra*0.8; printf("El Importe de la compra es %.2fnn", compra); getch();}
  5. 5. ESTRUCTURA SELECTIVA DOBLEEsta estructura, se caracteriza por el hecho que ofrece dos caminos a seguir, dependiendo si al evaluar la condición resulta cierta o falsa.Su sintaxis es la siguiente: if(Condición) Acción 1; else Se debe tener en cuenta que la Acción 2; condición puede ser compuesta, es decir haciendo uso de los operadores && y || ( Y lógico y No lógico). Además que cuando tenemos más de una sentencia por ejecutar ya sea del lado del cierto o del falso, estas van dentro de llaves.
  6. 6. EJEMPLO: SE DESEA SABER SI UN NÚMERO ES PAR O IMPAR. DISEÑEUN PROGRAMA EN EL CUAL EL USUARIO, INGRESE EL NÚMERO Y ELPROGRAMA MUESTRE CON UN MENSAJE, SI ÉSTE ES PAR O NO.#include <stdio.h>#include <conio.h>main() { int num; printf("Ingrese el n%cmero:n“, 163); scanf("%d", &num); if(num%2==0) printf("ES PARn"); else printf("ES IMPARn"); getch(); return 0; }
  7. 7. ALTERNATIVA MÚLTIPLE ( LA INSTRUCCIÓN SWITCH ) Una instrucción alternativa múltiple permite seleccionar, por medio de una expresión, el siguiente bloque de instrucciones a ejecutar de entre varios posibles. En lenguaje C, para escribir una alternativa múltiple se utiliza la sintaxis: switch ( <expresión> ) { case <expresión_1> : [ <bloque_de_instrucciones_1> ] [ break; ] case <expresión_2> : [ <bloque_de_instrucciones_2> ] [ break; ] ... case <expresión_n> : [ <bloque_de_instrucciones_n> ] [ break; ] [ default : <bloque_de_instrucciones_n+1> ] }El resultado de evaluar la <expresión> debe ser un valor perteneciente a un tipo dedato finito y ordenado, es decir, entero, lógico, carácter, enumerado o subrango.Dependiendo del valor obtenido al evaluar la <expresión>, se ejecutará un bloque deinstrucciones u otro.
  8. 8. EJEMPLO 1: SE QUIERE ESCRIBIR UN PROGRAMA QUE:1º) Pida por teclado el número  En pantalla: (dato entero) de un día de la semana. 2º) Muestre por pantalla el Introduzca día de la nombre (dato cadena) semana: 2 correspondiente a dicho día. MartesNota: Si el número de día Introduzca día de la introducido es menor que 1 semana: 9 ó mayor que 7, se mostrará el mensaje: "ERROR: Día ERROR: Día incorrecto. incorrecto.".
  9. 9. #include <stdio.h>#include <stdio.h> int main() { int dia; printf( "n Introduzca día de la semana: " ); scanf( "%d", &dia ); switch ( dia ) { case 1 : printf( "n Lunes" ); break; case 2 : printf( "n Martes" ); break; case 3 : printf( "n Miercoles" ); break; case 4 : printf( "n Jueves" ); break; case 5 : printf( "n Viernes" ); break; case 6 : printf( "n Sabado" ); break; case 7 : printf( "n Domingo" ); break; default : printf( "n ERROR: Dia incorrecto." ); } system (pause); return 0; }
  10. 10. Las limitaciones que tiene la sentencia switch ... case respecto a la estructura if son:  Sólo se tiene posibilidad de revisar una sola variable.  Con switch sólo se puede comprobar por igualdad, mientras que con if puede ser con cualquier operador relacional.  No se puede probar más de una constante por case.
  11. 11. EJERCICIO #2Realice un programa que , luego de leer 10 letras, cuente el número de vocales y el de consonantes escritas.Use While y switch
  12. 12. switch (letra){case a:case e: case i: case o: case u:numvocales++;break;default:numotras++; break;}

×