El for es una forma alternativa de while (consulta While 2 si lo necesitas) donde toda la información sobre la iteración queda resumida en una línea.
Supongamos el bucle siguiente, hecho con un while
El bucle muestra por pantalla todos los números del 1 al 100. Las tres partes marcadas en colores, son las que definen la iteración:
Estas 3 piezas de información determinan el bucle totalmente. Pues bien, el for las agrupa en una sola línea:
El for tiene al lado una gran expresión entre paréntesis que tiene 3 partes separadas por punto y coma (;). Hay que observar que los ; son separadores, solamente hay 2. Estas 3 partes son las comentadas anteriormente. Luego viene el bloque que engloba el grupo de instrucciones que se va a repetir (en este caso solo el cout << i << endl).
Por tanto, si se entiende el while se entiende el for, son la misma cosa escrita de forma distinta. El for se utiliza más cuando las 3 partes se pueden determinar claramente (como por ejemplo en las iteraciones utilizando una variable i que recorren una lista de números consecutivos, que ocurre mucho en las Tablas). En particular, el orden de ejecución es el siguiente:
Si revisamos el orden de ejecución de cada parte, se puede observar que es exactamente el mismo que en el while mencionado al principio.
Indica qué muestra cada uno de estos fors por pantalla, suponiendo declarada una variable i entera:
for (i = 5; i < 10; i++) { cout << i << endl; }
for (i = 0; i <= 8; i = i + 2) { cout << i << ' '; }
for (i = 10; i > 0; i--) { cout << i; }
for (i = 10; i < 0; i++) { cout << i * i << endl; }
for (i = 1; i <= 1024; i = i*2) { cout << i << endl; }
Cuál es el problema con el siguiente for:
int i; for (i = 0; i != 9; i = i + 2) { // ... }
En preparación