[C con Clase] ¿Por que no funciona este bucle?

Steven Davidson srd4121 en njit.edu
Vie Mayo 20 00:31:46 CEST 2011


Hola David,

On 5/19/11, David de las Heras <davidehm en gmail.com> wrote:
> Hola:
> He intentado otra vez resolver uno de los ejercicios (el 6.3) de forma
> alterntiva, pero no funciona mi planteamiento.
> ¿Donde me estoy equivocando?
>
> Pongo el código;
>

Veamos el código fuente.

> #include <iostream>
> using namespace std;
>
> int main()
> {
>    int a=0;
>    int b=1;
>
>    while (b<10)
>         {

Aquí tienes un problema. El valor de 'a' será incrementado en el
siguiente bucle 'while', porque empezó con el valor inicial de 0
(cero). Sin embargo, en las subsiguientes iteraciones, donde
b=2,3,4,5,...,10, el valor de 'a' no es reiniciada a 0 (cero), por lo
que el siguiente bucle 'while' no funcionará como deseas.

La solución es reasignar el valor de 'a' para que vuelva a ser 0
(cero). Esto es,

a = 0;

>             while (a<b)
>             {cout <<a <<endl;
>             a++;
>             }
>    b++;
>    }
> return 0;
> }
>
> ¡Gracias!
>

Espero que esto aclare la duda.

Steven




Más información sobre la lista de distribución Cconclase