Академический Документы
Профессиональный Документы
Культура Документы
...
Programaci on B asica Estructuras de control: for, while, do-while Iv an Cabrera Altamirano ivan.cabrera@embedded.com.mx
1 / 16
2 / 16
Denition Son aquellas que permiten al programador alterar el ujo de ejecuci on de un programa. Existen tres tipos de estructuras de control: de secuencia, de selecci on, de repetici on. De acuerdo al teorema del programa estructurado (Bohm & Jacopini, 1966), cualquier programa puede escribirse utilizando unicamente esos 3 tipos de estructuras.
2 / 16
3 / 16
Acceder un arreglo.
3 / 16
3 / 16
Acceder un arreglo. Procesar una cadena de caracteres. Realizar operaciones matem aticas (e.g. promedio, integraci on num erica).
3 / 16
Acceder un arreglo. Procesar una cadena de caracteres. Realizar operaciones matem aticas (e.g. promedio, integraci on num erica). Ordenar y buscar datos.
3 / 16
Acceder un arreglo. Procesar una cadena de caracteres. Realizar operaciones matem aticas (e.g. promedio, integraci on num erica). Ordenar y buscar datos. Ejecutar acciones m as de una ocasi on.
3 / 16
Se utiliza para ejecutar acciones repetitivas con un numero conocido de iteraciones. for(inicializaci on; condici on; incremento) { expresiones a repetir; }
4 / 16
for(i=0; i<10; i++) { printf("Elemento[%d] = %d\n",i,valores[i]); } Inicializaci on: i = 0; Condici on booleana de parada: i < 10; Incremento: i + +; Expresi on a repetir: printf (...);
5 / 16
Se utiliza para ejecutar acciones repetitivas mientras se cumpla o no una condici on. Es ideal cuando no sabemos previamente el numero de iteraciones. inicializaci on; while(condici on) { expresiones a repetir; incremento; }
7 / 16
8 / 16
10 / 16
13 / 16
13 / 16
14 / 16
Ciclos anidados for (i=0; i<5; i++){ for(j=0; j<5; j++) { printf("datos[%d][%d] = %d\n",i,j,datos[i][j]); } }
14 / 16
Probables errores
15 / 16
Probables errores
Inicializaci on incorrecta: int acumulador = 0; while(acumulador < 20000) { acumulador = acumulador * 5; }
15 / 16
Probables errores
Inicializaci on incorrecta: int acumulador = 0; while(acumulador < 20000) { acumulador = acumulador * 5; } Condiciones mal escritas: int contador = 1; while(contador != 10) { contador += 2; }
15 / 16
16 / 16
16 / 16