Es decir lo que interpreto es que se crea var contador = 1 y luego se usa como condicion dentro de while para representar a todos los numeros del 1 al 10 que son distintos del numero pensado. Es asi?
No, en el ejemplo que nos mostraron se requería imprimir 10 veces el mismo mensaje cuando no se acierta en el número (es solo coincidencia que se imprima el mismo numero de veces que los numero distintos al pensado)
La variable contador es la forma que tenemos para controlar las repeticiones del while, se crea afuera del ciclo para asegurarnos que inicia con el valor que nosotros queremos (en este caso 1) pero se usa dentro del while para tener un control de las veces que se entra en el bloque while, ya que cada que se entra en el bloque while se modifica a la variable contador, por ejemplo en el código que nos dieron
- contador inicia con el valor 1
- while verifica que contador sea menor igual a 10 (como contador vale 1, si entra en el ciclo while)
- se imprime el mensaje ¡Se acabó, vos erraste!
- se le suma 1 al valor de contador (ya vale 2).
- Otra vez while verifica que contador sea menor igual a 10 (como contador vale 2, si entra en el ciclo while)
- se imprime el mensaje ¡Se acabó, vos erraste!
- se le suma 1 al valor de contador (ya vale 3).
- Esto se repite hasta que contador vale 11
- otra vez while verifica que contador sea menor igual a 10 (como contador vale 11, ya no entra el bloque while )
- y el programa continua con la siguiente instrucción en nuestro caso ya es el fin del programa
Por ejemplo si quisiéramos que el mensaje solo se imprimiera 5 veces, una forma de hacerlo es que el aumento de contador sea de 2
var contador = 1;
while(contador <= 10) {
imprimir("¡Se acabó, vos erraste!");
contador = contador +2;
}
De esta forma tenemos que se ejecuta esto
- contador inicia con el valor 1
- while verifica que contador sea menor igual a 10 (como contador vale 1, si entra en el ciclo while)
- se imprime el mensaje ¡Se acabó, vos erraste!
- se le suma 2 al valor de contador (ya vale 3).
- Otra vez while verifica que contador sea menor igual a 10 (como contador vale 3, si entra en el ciclo while)
- se imprime el mensaje ¡Se acabó, vos erraste!
- se le suma 2 al valor de contador (ya vale 5).
- Esto se repite hasta que contador vale 11
- otra vez while verifica que contador sea menor igual a 10 (como contador vale 11, ya no entra el bloque while )
- y el programa continua con la siguiente instrucción en nuestro caso ya es el fin del programa
Si contador no estuviera dentro del while no se modificaría en cada repetición y tendríamos un ciclo infinito
Espero resolver tu duda.