Bueno este es el enunciado:
Citaruna línea compuesta por secuencias de cuatro unos (1) y un cero (0) sucesivas de 25 de largo
1111011110111101111011110
Y me quedado atascado lo que tengo de momento es lo siguiente:
public class e4
{
public static void main(String[]args)
{
int cero=0;
int uno=0;
int i=0;
while(cero<25 && uno<25 && i<25)
{
i++;
while(uno<4)
{
uno++;
System.out.print("1");
}
while(cero<1)
{
cero++;
System.out.println("0");
}
}
}
}
Si lo ejecutais vereis que me da los primeros 11110 pero no logro repetir la secuencia dios y el lunes tengo un examen!!
Eso es porque, la variable uno la usas en varios procesos, en donde afectan los valores, es decir,
En el inicio de variables uno vale 0.
Entra al ciclo y vale 1.
Entra al segundo ciclo en 1 y sale en 3 -porque la condución dice que se ejecute mientras sea menor a 4-
Cuando vuelve y entra el primer ciclo ya vale 3 y se incrementa a 4.
Cuando va a entrar de nuevo al segundo ciclo no puede porque la variable uno no cumple la condución -que sea menor a 4-, actualmente vale 4 exacto.
De igual forma pasa con la variable cero
Gracias por la respuesta pero la cuestion esque no logro hacerlo podrias hacerme el codigo de como seria para imprimir el resultado citado??
-El primer while que compruebe i<25.
-El i lo incrementas en los dos while interiores para que cuente cada caracter.
-Cada vez que salgas de los while interiores tienes que resetear sus contadores, si no solo entrará una vez.
Gracias tio, ahora lo vi claro y se me ilumino el coco, dejo el codigo por si alguien le hiciera falta como ami entenderlo gracias.
public class e4
{
public static void main(String[]args)
{
int cero=0;
int uno=0;
int i=0;
while(i<25)
{
while(uno<4)
{
uno++;
i++;
System.out.print("1");
}
while(cero<1)
{
cero++;
i++;
System.out.print("0");
}
uno=0;
cero=0;
}
}
}