Sentencia for (iteración) Forma general: for (asignacion1; expresion; asignacion2) sentencia Inicialmente (solo la primera vez) se ejecuta asignacion1: se inicializa algún parámetro que controla la repetición del bucle expresion es una condición que debe ser cierta para que se ejecute sentencia asignacion2 se utiliza para modificar el valor del parámetro El bucle se repite mientras expresion sea verdadera Si sentencia es compuesta se encierra entre { } Fundamentos de Informática EUP ULPGC Jose Torres Diagrama de flujo de la sentencia for (expresion1=asignacion1, expresion2=expresion, expresion3=asignacion2) Fundamentos de Informática EUP ULPGC Jose Torres Ejemplo: programa que cuenta de 0 a 99 #include <stdio.h> main() { int numero; for (numero=0; numero <100; numero++) printf("%d ", numero); } Fundamentos de Informática EUP ULPGC Jose Torres El diagrama de flujo sería Fundamentos de Informática EUP ULPGC Jose Torres Equivalencia del for y el while for (numero=0; numero <100; numero++) printf("%d ", numero); es equivalente a numero=0; while (numero < 100) { printf("%d ", numero); numero++; } Fundamentos de Informática EUP ULPGC Jose Torres Ejemplo 2: programa que cuenta hasta un número dado #include <stdio.h> main() { int numero, indice; printf (“Dame el final de la cuenta: ”); scanf(“%d”, &numero); for (indice=0; indice <= numero; indice++) printf("%d ", indice); printf(“\nFinal de la cuenta\n”); } Fundamentos de Informática EUP ULPGC Jose Torres Ejemplo 3: programa que calcula el doble de los 10 primeros números naturales (del 0 al 9) #include <stdio.h> main() { int numero, doble; for (numero=0; numero <10; numero++) { doble=2*numero; printf("El doble de %d es %d\n", numero, doble); } } Fundamentos de Informática EUP ULPGC Jose Torres Ejemplo 4: programa que calcula el doble de 10 números dados #include <stdio.h> main() { int indice, numero, doble; for (indice=0; indice <10; indice++) { printf (“Numero= “); scanf (“%d”, &numero); doble=2*numero; printf("El doble de %d es %d\n", numero, doble); } Fundamentos de Informática EUP ULPGC } Jose Torres