0
Estructuras de Repetición en C                                 2011/1 - CLASE 12
AGENDA1    2        3            4                5                    6
Introducción            IntroducciónEn C existen tres estructuras de controlrepetitivas:Pseudocódigo               Lenguaj...
Ciclos en CUn ciclo (bucle) es una estructura que permite larepetición de una o mas instrucciones undeterminado numero de ...
Ciclos en C                     Expresión lógica que controla la                     secuencia       de      repetición.(C...
Principios a considerar cuando se usan                   bucles c                            Es importante analizar       ...
Introducción          Introducción    • El cuerpo del ciclo.1    • Las sentencias de inicialización.2    • Las condiciones...
Introducción              IntroducciónLas estructuras ciclicas se terminancuando:1. La condición de evalución se vuelve fa...
AGENDA1    2        3            4                5                    6
SENTENCIA WHILE                Sentencia whileRealiza un conjunto de operaciones mientras unacondición se esté cumpliendo,...
SENTENCIA WHILE            Sintaxis          PseudocódigoMientras (condición) haga    Instruccionesfin_mientras           ...
SENTENCIA WHILE              Sentencia while(Condición)                Variable de control: Variable que                re...
SENTENCIA WHILE  Sentencia whilecontador = 0;               Inicialización  while (contador < n) {      (Condición)       ...
SENTENCIA WHILESentencia while EVALUAR                 FalsoCONDICIÓN     Verdadero                                 Fin de...
SENTENCIA WHILE                 Ejemplo1Realizar un programa que cuentehasta N  i = 0;  while (i <= N) {     printf("El va...
SENTENCIA WHILE                        Ejemplo2Realizar un programa que pida que seingresen las notas de los estudiantes, ...
AGENDA1    2        3            4                5                    6
SENTENCIA FOR                 Sentencia forRealiza un conjunto de operaciones                           undeterminado núme...
SENTENCIA FOR         Sentencia forRecomendado para:     • Ciclos que son controlados por1      contador    • Ejecutar un ...
SENTENCIA WHILE             Sintaxis            Pseudocódigopara VC desde LI hasta LF con INC    <Instrucciones>fin_para  ...
SENTENCIA FORExpre1: Se le da el                            Sintaxisvalor inicial a la     Expre2: Condición, quevariable ...
SENTENCIA FOR                   Sentencia for                      ComprobaciónInicialización                             ...
SENTENCIA FOR                            Sintaxis          La(s) variable de control se puede incrementar o         decrem...
SENTENCIA FOR                 Ejemplo1Realice programa que muestre los Nprimeros factoriales  fact=1;  for (i = 1; i <= N;...
SENTENCIA FOR                Ejemplo2Realice programa que sume los N primerosnaturales pares.     suma=0;     for (i = 1; ...
SENTENCIA FOR               Ejemplo3Realice programa que muestre los 10primeros impares naturales, en ordendescendente.   ...
SENTENCIA DO-WHILE            Comparación while, for         whileInicializaciónVC;                   forwhile (condición)...
SENTENCIA WHILE Y FOR           RecomendacionesWhile: El uso más frecuente es cuando larepetición no está controlada por c...
SENTENCIA WHILE Y FOR                  Recomendaciones        En el ciclo for no es recomendable modificar        el valor...
SENTENCIA WHILE Y FOR                  Bucles infinitos    Aplicaciones en los que el número de repeticiones    no se pued...
AGENDA1    2        3            4                5                    6
SENTENCIA DO-WHILE           Sentencia do-whileBucle condicional que se ejecuta al menosuna vez.      • Se ejecuta el cuer...
SENTENCIA DO-WHILE            Sentencia do-while                 Cuerpo del bucle                    EJECUTAR             ...
SENTENCIA DO-WHILE        Sintaxisdo {    Instrucciones;} while (expresión);
SENTENCIA DO-WHILE   Comparación while, do-while    while                            do-while                 Falso   COND...
SENTENCIA DO-WHILE       Comparación while, do-while       while                do-whilewhile (expresión) {   do {   Instr...
SENTENCIA DO-WHILE                      EjemploPrograma que imprime un mensaje“continua programa” hasta que se le ingreseu...
SENTENCIA WHILE Y FOR          Recomendacionesdo -while: El uso más frecuente es cuandola repetición no está controlada po...
AGENDA1    2        3            4                5                    6
INTRUCCIONES ESPECIALES       Instrucción breakLa sentencia break es utilizada comométodo de terminación TEMPRANA delbucle...
SENTENCIA WHILEInstrucción break  EVALUAR                  FalsoCONDICIÓN      Verdadero                                  ...
INTRUCCIONES ESPECIALES               EjemploRealizar un programa que pida que se ingresennotas de N estudiantes, y que cu...
INTRUCCIONES ESPECIALES            Instrucción continueLa sentencia continue hace que la ejecución deun bucle vuelva inmed...
INTRUCCIONES ESPECIALES            #include <stdio.h>            #define MAX_CONT 10                       Instrucción con...
AGENDA1    2        3            4                5                    6
Ciclos Anidados             Ciclos anidadosSe pueden anidar ciclos repetitivos.Útil para aplicaciones de matrices de mas d...
Ciclos Anidados              Ejemplo1Realice un programa que muestre lasprimeras       5    potencias(Utilizandomultiplica...
Ciclos Anidados                 EjercicioRealice un programa que muestre la siguientesecuencia de números:112123123412345…...
Bibliografía• Joyanes Aguilar, Luis. PROGRAMACIÓN EN C.  Metodología, algoritmos y estructura de  datos Capitulo3.• H.M. D...
1clase e12 estructurasderepeticionc
1clase e12 estructurasderepeticionc
Upcoming SlideShare
Loading in...5
×

1clase e12 estructurasderepeticionc

1,008

Published on

Introducir a los estudiantes en el leguaje de programación C con el fin de entender sus principales características, su estructura, los tipos de datos y los operadores que maneja este lenguaje.

Published in: Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,008
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
66
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "1clase e12 estructurasderepeticionc"

  1. 1. Estructuras de Repetición en C 2011/1 - CLASE 12
  2. 2. AGENDA1 2 3 4 5 6
  3. 3. Introducción IntroducciónEn C existen tres estructuras de controlrepetitivas:Pseudocódigo Lenguaje C Mientras while Para for Haga-mientras do-while
  4. 4. Ciclos en CUn ciclo (bucle) es una estructura que permite larepetición de una o mas instrucciones undeterminado numero de veces. http://www.youtube.com/watch?v=aeg0mLp9IB0
  5. 5. Ciclos en C Expresión lógica que controla la secuencia de repetición.(Condición) Normalmente, se evalúa antes de la ejecución del cuerpo del bucle. Conjunto de instrucciones (asociadas al problema) que se Cuerpo ejecutan dentro del bucle: • Estructuras condicionales. • Instrucciones I/O. • Otros bucles. • Instrucciones de asignación. Fin • Funciones.
  6. 6. Principios a considerar cuando se usan bucles c Es importante analizar los requisitos del bucle, pues se debe determinar su Algunas preguntas de ¿Qué principios inicialización, condición utilidad: considerar y actualización. • ¿Qué es lo que debe cuando se contener el cuerpo del diseñan bucles? bucle?• Cuantas veces se itera el bucle.
  7. 7. Introducción Introducción • El cuerpo del ciclo.1 • Las sentencias de inicialización.2 • Las condiciones para la terminación3 del bucle.
  8. 8. Introducción IntroducciónLas estructuras ciclicas se terminancuando:1. La condición de evalución se vuelve falsa2. Cuando se ejecuta la instrucción break o return
  9. 9. AGENDA1 2 3 4 5 6
  10. 10. SENTENCIA WHILE Sentencia whileRealiza un conjunto de operaciones mientras unacondición se esté cumpliendo, o mientras unaexpresión sea verdadera • Se evalúa la condición-bucle1 • Si condición-bucle es verdadera : • Se ejecuta el cuerpo del bucle2 • Vuelve el control al paso 1. • Si condición-bucle es falsa :3 • Se termina el ciclo. • Condiciones:* • Cuantitativas y Caulitativas
  11. 11. SENTENCIA WHILE Sintaxis PseudocódigoMientras (condición) haga Instruccionesfin_mientras Lenguaje Cwhile (condición){ Instrucciones;}
  12. 12. SENTENCIA WHILE Sentencia while(Condición) Variable de control: Variable que representa la condición del bucle ya Cuerpo que su valor determina si el bucle se repite o no. Esta debe ser: • Inicializada. • Comprobada. Fin • Actualizada.
  13. 13. SENTENCIA WHILE Sentencia whilecontador = 0; Inicialización while (contador < n) { (Condición) Comprobación<Instrucciones>; ...Cuerpocontador = contador+1; Actualización } Fin
  14. 14. SENTENCIA WHILESentencia while EVALUAR FalsoCONDICIÓN Verdadero Fin del ciclo Cuerpo EJECUTAR del bucle
  15. 15. SENTENCIA WHILE Ejemplo1Realizar un programa que cuentehasta N i = 0; while (i <= N) { printf("El valor del conteo es: %dn", i); i++; }
  16. 16. SENTENCIA WHILE Ejemplo2Realizar un programa que pida que seingresen las notas de los estudiantes, y quecuando halla una nota menor que 3, muestreun mensaje que diga “El estudiante perdió”. El salir = 0;programa únicamente debe finalizar cuando while (salir!=1) {el usuario lo desee. del estudiante:"); printf("Ingrese la nota scanf("%f",&nota); if (nota < MIN_NOTA){ printf("El estudiante perdion"); } printf("Ingrese 0 para continuar, 1 para salir: "); scanf("%d",&salir); }
  17. 17. AGENDA1 2 3 4 5 6
  18. 18. SENTENCIA FOR Sentencia forRealiza un conjunto de operaciones undeterminado número de veces • Se inicializa la variable de control y se1 evalúa la condición-bucle • Si condición es verdadera : • Se ejecuta el cuerpo del bucle2 • Se incrementa la variable y se evalúa la condición • Si condición-bucle es falsa :3 • Se termina el ciclo. • Condiciones:* • Cuantitativas
  19. 19. SENTENCIA FOR Sentencia forRecomendado para: • Ciclos que son controlados por1 contador • Ejecutar un conjunto de instrucciones un2 determinado número de veces
  20. 20. SENTENCIA WHILE Sintaxis Pseudocódigopara VC desde LI hasta LF con INC <Instrucciones>fin_para Lenguaje Cfor( VC; condicionBucle; INC o DEC){ instrucciones;}
  21. 21. SENTENCIA FORExpre1: Se le da el Sintaxisvalor inicial a la Expre2: Condición, quevariable de control contiene una expresión Expre3: Modificacióndel bucle. Se pueden lógica, mientras sea vble, como cambia lainicializar una o verdadera se realiza el variable de controlvarias variables. bucle for(VC; condicionBucle; INC o DEC) { instrucciones; }
  22. 22. SENTENCIA FOR Sentencia for ComprobaciónInicialización Actualización for(i = 1 ; i < n; i++) { (Condición) <Instrucciones>; ...Cuerpo } Fin
  23. 23. SENTENCIA FOR Sintaxis La(s) variable de control se puede incrementar o decrementar no solo en valores tipo int, también es posible realizar tales operaciones usando valores tipo float o double permitiendo el incremento o decremento en cantidades decimales.double p; float n;for(p=0.75; p<=5; p+= 0.25) for(n=1; n>= 0; n-=0.1){ { printf(“p = %lfn”, p); printf(“n = %fn”, n);} }
  24. 24. SENTENCIA FOR Ejemplo1Realice programa que muestre los Nprimeros factoriales fact=1; for (i = 1; i <= N; i++) { fact=fact*i; printf("factorial de %d: %dn",i,fact); } for (i = 1,fact=1; i <= N; i++) { fact=fact*i; printf("factorial de %d: %dn",i,fact); }
  25. 25. SENTENCIA FOR Ejemplo2Realice programa que sume los N primerosnaturales pares. suma=0; for (i = 1; i <= N; i++) { if(i%2==0){ suma+=i; } } printf("La suma es: %dn",suma);
  26. 26. SENTENCIA FOR Ejemplo3Realice programa que muestre los 10primeros impares naturales, en ordendescendente. for (i = MAX_NUM; i >= 0; i--) { if(i%2 != 0){ printf("numero par: %dn",i); } }
  27. 27. SENTENCIA DO-WHILE Comparación while, for whileInicializaciónVC; forwhile (condición) for( VC; condición; INC){ { InstruccionesX; instrucciones; INC; }}
  28. 28. SENTENCIA WHILE Y FOR RecomendacionesWhile: El uso más frecuente es cuando larepetición no está controlada por contador;la condición precede a cada repetición delbucle.For: Bucle de conteo, cuando el número derepeticiones se conoce por anticipado ypuede ser controlado por un contador; laevaluación de la condición precede a laejecución del cuerpo del bucle.
  29. 29. SENTENCIA WHILE Y FOR Recomendaciones En el ciclo for no es recomendable modificar el valor de cualquiera de las variables de la condición del bucle dentro del cuerpo del bucle, ya que se pueden producir resultados imprevistos.int i,limite = 11; for (i = 0; i <= limite; i++)for (i = 0; i <= limite; i++) {{ print f ("%dn",i); printf ( "%dn" , i ) ; i--; Iimite++ ; }}
  30. 30. SENTENCIA WHILE Y FOR Bucles infinitos Aplicaciones en los que el número de repeticiones no se pueden determinar por anticipado. Interesa que comiencen pero eventualmente que no terminen.while(1) for ( ; ; ){ { Instrucciones; Instrucciones; if (condiciónTerminación) if(condiciónTerminación) break; break;} }
  31. 31. AGENDA1 2 3 4 5 6
  32. 32. SENTENCIA DO-WHILE Sentencia do-whileBucle condicional que se ejecuta al menosuna vez. • Se ejecuta el cuerpo del bucle. 1 • Se evalúa la condicion. • Si se cumple la condición, entonces se repite la 2 ejecución de sentencia. • Se evalúa la condicion. • Si no se cumple la condición la estructura termina y da 3 paso a la continuación del programa • Condiciones: * • Cuantitativas y Caulitativas
  33. 33. SENTENCIA DO-WHILE Sentencia do-while Cuerpo del bucle EJECUTAR EVALUAR CONDICIÓNverdadero Falso Fin del ciclo
  34. 34. SENTENCIA DO-WHILE Sintaxisdo { Instrucciones;} while (expresión);
  35. 35. SENTENCIA DO-WHILE Comparación while, do-while while do-while Falso CONDICIÓN Cuerpo del bucleverdadero verdadero Cuerpo del CONDICIÓN bucle Falso
  36. 36. SENTENCIA DO-WHILE Comparación while, do-while while do-whilewhile (expresión) { do { InstruccionesX; InstruccionesX;} } while (expresión);
  37. 37. SENTENCIA DO-WHILE EjemploPrograma que imprime un mensaje“continua programa” hasta que se le ingreseun carácter de terminación 0. (Realicelo conwhile, luego con do-while y compare!!) do{ printf("continuar programan"); printf("Ingrese 0 para salir: "); scanf("%d",&salir); }while (salir!=CAR_FIN);
  38. 38. SENTENCIA WHILE Y FOR Recomendacionesdo -while: El uso más frecuente es cuandola repetición no está controlada porcontador; el cuerpo del ciclo precede a lacondición.
  39. 39. AGENDA1 2 3 4 5 6
  40. 40. INTRUCCIONES ESPECIALES Instrucción breakLa sentencia break es utilizada comométodo de terminación TEMPRANA delbucle a la que pertenece.Si mientras se ejecuta el cuerpo delbucle, se encuentra con la instrucciónbreak, se terminará inmediatamente elciclo.
  41. 41. SENTENCIA WHILEInstrucción break EVALUAR FalsoCONDICIÓN Verdadero Fin del ciclo Cuerpo EJECUTAR del bucle break;
  42. 42. INTRUCCIONES ESPECIALES EjemploRealizar un programa que pida que se ingresennotas de N estudiantes, y que cuando halla unanota mayo que 3, muestre un mensaje que diga“Hay alguien que ganó”, y termine el programainmediatamente.
  43. 43. INTRUCCIONES ESPECIALES Instrucción continueLa sentencia continue hace que la ejecución deun bucle vuelva inmediatamente a la cabeceradel bucle.Programa que muestra conteo hasta 10, semuestra el siguiente valor del conteo solo si sele ha ingresado el número 0
  44. 44. INTRUCCIONES ESPECIALES #include <stdio.h> #define MAX_CONT 10 Instrucción continue #define CAR_ESPECIAL 0 int main(void) { i=i+1 int i, equiv=0; i=1+1 int mostrar; 11<=10 ? 2<=10 1<=10 …i=2 VC CONDICIÓN INC for (i = 1; i <= MAX_CONT; i++) { msj printf("Ingrese 0 si quiere ver el conteo:"); read scanf("%d", &mostrar);No Se ingresó 0 if (mostrar!= CAR_ESPECIAL){ se EJECUTA Volver al ciclo continue; }msj conteo=2 printf("El valor del conteo es: %dn", i);Fin del ciclo } return 0; }
  45. 45. AGENDA1 2 3 4 5 6
  46. 46. Ciclos Anidados Ciclos anidadosSe pueden anidar ciclos repetitivos.Útil para aplicaciones de matrices de mas deuna dimensión. for( i=0; i<LIM1; i++) { for( j=0; j<LIM2; j++) { Instruciones1; } }
  47. 47. Ciclos Anidados Ejemplo1Realice un programa que muestre lasprimeras 5 potencias(Utilizandomultiplicaciones) de los primeros 7naturales.
  48. 48. Ciclos Anidados EjercicioRealice un programa que muestre la siguientesecuencia de números:112123123412345…El usuario debe ingresar cual es el ultimo numeroque se debe mostrar en un renglón.
  49. 49. Bibliografía• Joyanes Aguilar, Luis. PROGRAMACIÓN EN C. Metodología, algoritmos y estructura de datos Capitulo3.• H.M. Deitel, P.J. Deitel. Como programar en C y C++• Google
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×