traductor traducir portugues mundo italiano ingles frances espaƱol buscar babylon c for-loop while-loop

traducir - traductor ingles



Traducir un ciclo while en bucle for (4)

El bucle for dobla i y luego lo incrementa. El ciclo while solo lo dobla.

Cambia el ciclo for por esto:

for (i=1;i<=128;i*=2) { printf("%d", i); }

Tener un simple ciclo while e intentar llegar a un ciclo for

i=1 while(i<=128) { printf("%d",i); i*=2; }

Aquí está mi bucle for

for (i=1;i<=128;i++) { printf("%d",i); i*=2; }

¿Cómo es que no da el mismo resultado? El primero imprimiría 1248163264128 , el bucle de impresión 137153163127 ?


for (i=1;i<=128;i*=2) { printf("%d",i); }


En el ciclo while no incrementaste i , pero en tu loop for estás usando

for (i=1;i<=128;i++) { printf("%d",i); i*=2; }

Estás incrementando i con uno y multiplicando i por 2 en cada iteración de tu ciclo. Esta es la razón por la que obtienes un resultado extraño.

Pruebe el siguiente código para obtener el mismo resultado que while loop.

for (i = 1; i <= 128; i *= 2) { printf("%d",i); }


Porque también estás incrementando i en el for-loop. En tu while-loop original, nunca se incrementa.

Prueba esto:

for (i=1; i<=128; i*=2) // Remove i++, move the i*=2 here. { printf("%d",i); }