Está en la página 1de 3

ESTRUCTURAS REPETITIVAS: for

Anteriormente se discuti a la sentencias while y do-while que se utilizan en C++ para programar la ejecucin de ciclos; existe sin embargo otra forma de representar sentencias repetitivas. Esta otra forma es a travs de la sentencia for que se detalla en este documento.

Sentencia for : Ejemplo de Uso


Un programador podra representar cualquier clculo iterativo a travs de las sentencias while y do-while. Sin embargo, existe un tipo de ciclo tan comn que se ha creado una sentencia especial para representarlo; este ciclo se utiliza generalmente en clculos numricos e involucra operaciones con nmeros que se incrementan (o disminuyen) en la misma forma en cada iteracin del ciclo. Para estos ciclos se cre la sentencia for. Veamos el siguiente ejemplo de uso de la sentencia while: suma=0; n = 1; while (n<=10) { suma = suma + n; n++; } Observe que esta sentencia se ejecuta de forma que la sentencia de asignacin del ciclo se ejecuta 10 veces, y por lo tanto el ciclo da como resultado la suma de los nmero del 1 hasta el 10. Observe tambin que en cada iteracin la variable n aumenta su valor en 1. Este mismo clculo puede realizarse con el ciclo for de la forma siguiente: suma=0; for (n=1; n<=10; n++) suma = suma + n; La sentencia for (n=1; n<=10; n++) debera interpretarse como: Desde n igual a 1, mientras que n<=10, aumentando n de uno en uno, ejecuta la(s) sentencia(s) siguiente(s) ...

En este caso se dice que n es la variable de control del ciclo. Analicemos la sentencia anterior. Observe que una sentencia for consiste de la palabra reservada for seguida por un conjunto de tres cosas encerradas entre parntesis y separadas por punto y coma.

for(inicializacion_de_variable; expresion_boleana; actualizacion_de_variable)


La primera de las cosas entre parntesis inicializa la variable de control del ciclo, la segunda proporciona una expresin boleana para poder verificar cuando se termina el ciclo y la ltima nos dice como la variable de control del ciclo se va a actualizar en cada iteracin. Al igual que en el caso de la sentencia if-else la sentencia for no va seguida por punto y coma. Luego de la sentencia for viene la sentencia que debe ejecutarse en el ciclo.

Esto se puede generalizar a travs de la siguiente sintaxis: for(inicializacion_de_variable; expresion_boleana; actualizacion_de_variable) sentencia_a_ser_ejecutada_en_el_ciclo; Lo anterior corresponde al caso en el que slo se ejecuta una sentencia en cada iteracin del ciclo.

Si se compara el ciclo while con el ciclo for, se vera que el ciclo for es equivalente a un ciclo while de la forma: inicializacion_de_variable; while(expresion_boolena) { sentencia_a_ser_ejecutada_en_el_ciclo; actualizacion_de_variable; } As, por ejemplo, si un ciclo while se define como: numero=10; while(numero>=0) { cout<<numero; numero--; }

El ciclo se puede representar en forma equivalente con la sentencia for: for(numero=10; numero>=0; numero--) cout<<numero; En general, cuando se ejecutan ms de una sentencia en el ciclo, la sintaxis de una sentencia for es la siguiente. for(inicializacion_de_variable; expresion_boleana; actualizacion_de_variable) { sentencia_1_del_ciclo; sentencia_2_del_ciclo;  ultima_sentencia_del_ciclo; } La diferencia con la sintaxis escrita con anterioridad es el uso de llaves.