elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  [JS] Cada vez me siento más idiota, no comprendo lo más sencillo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: [JS] Cada vez me siento más idiota, no comprendo lo más sencillo  (Leído 5,044 veces)
Linton

Desconectado Desconectado

Mensajes: 239



Ver Perfil
[JS] Cada vez me siento más idiota, no comprendo lo más sencillo
« en: 17 Junio 2013, 21:17 pm »

Estoy con el manual Eloquent javascript, y llego en el capítulo 2 al ejercicio de calcular 2 elevado a 10. Por supuesto, no lo he sacado.

La solución es la siguiente:

Código
  1. var resultado = 1;
  2. var contador = 0;
  3. while (contador <10) {
  4. resultado = resultado * 2;
  5.   contador = contador + 1;
  6. }
  7. document.write(resultado);

Y sencillamente NO LO ENTIENDO  :( ¿Dónde diablos se expresa la relación entre "resultado" y "contador", dónde dice que "contador" es el número de veces que se repite la operación? Sólo hay dos variables yuxtapuestas sin ninguna conexión entre ellas :( :(  :(

Gracias por la ayuda.


En línea

$Edu$


Desconectado Desconectado

Mensajes: 1.842



Ver Perfil
Re: [JS] Cada vez me siento más idiota, no comprendo lo más sencillo
« Respuesta #1 en: 17 Junio 2013, 21:42 pm »

while (contador <10) ---> eso dice que se repetira todo el bucle, mientras contador sea menor a 10. Por eso se incrementa en 1 la variable contador, para realizar 10 veces el bucle. Luego entonces dentro del bucle multiplica resultado por 2, dando 2, y luego como resultado ahora vale 2, se sigue multiplicando por 2 y da 4, luego 8, luego 16, etc, hasta 1024 y justo es cuando contador equivale a 10, por lo tanto al verificar el While, ya la condicion de contador < 10 no se cumple y por lo tanto se sale del bucle.

Y luego muestra la variable resultado, que contendra el numero 1024 que es 2^10.

Buscate un buen tutorial que te explique desde 0 todo, sino dificil aprender.


En línea

Linton

Desconectado Desconectado

Mensajes: 239



Ver Perfil
Re: [JS] Cada vez me siento más idiota, no comprendo lo más sencillo
« Respuesta #2 en: 17 Junio 2013, 21:54 pm »

while (contador <10) ---> eso dice que se repetira todo el bucle, mientras contador sea menor a 10.

Eso es lo que no entiendo, ¿cómo sabe el programa que esa cifra es la cantidad de veces que se repite la multiplicación? Pensaba que "counter" (la palabra que utiliza el manual) era una comosellame de javascript, igual que var o while, pero no, la cosa funciona aunque se denomine a la variable "cebolla" en vez de "counter".

Y no veo dónde está expresado que "contador", o "cebolla", o "me llamo Bond, James Bond", es el número de veces que hay que repetir el bucle. ¿¿¿Es una asignación por defecto cuando se ponen dos variables???

Muchas gracias por tu ayuda, un saludo.

PD: se supone que "Eloquent javascript" es lo más elemental  :(
En línea

$Edu$


Desconectado Desconectado

Mensajes: 1.842



Ver Perfil
Re: [JS] Cada vez me siento más idiota, no comprendo lo más sencillo
« Respuesta #3 en: 17 Junio 2013, 22:07 pm »

Busca otro tutorial, que sea un libro, un pdf de esos largos, que comience desde 0.

Pero sacandote de la duda, el que indica las veces que se repetira el bucle es la condicion del While, es decir, lo que esta entre los parentesis. Que dice: "Mientras la variable contador sea menor a 10". Asi que si, si cambias de variable, a otro nombre, no pasa nada, pero tendras que cambiar "contador = contador + 1;" por el nuevo nombre de la variable. Ya que si no existe una variable que haga de contador para la condicion del while, entonces el bucle se ejecuta infinitamente.
En línea

Linton

Desconectado Desconectado

Mensajes: 239



Ver Perfil
Re: [JS] Cada vez me siento más idiota, no comprendo lo más sencillo
« Respuesta #4 en: 17 Junio 2013, 22:25 pm »

Ah vaya, creo que me he liado con lo de if  :silbar: :P

Pero, entonces, ¿todo lo que se puede programar con un bucle while es el número de veces que se repite la jugada?  :huh:

¡Muchas gracias por tu ayuda, intento buscar ese manual básico pero hasta los más "básicos" dan por sentado que has estudiado programación dos años!  :-(
En línea

fary


Desconectado Desconectado

Mensajes: 1.076



Ver Perfil WWW
Re: [JS] Cada vez me siento más idiota, no comprendo lo más sencillo
« Respuesta #5 en: 17 Junio 2013, 22:56 pm »

Con un bucle while puedes repetir todo lo que tu quieras el numero de veces que desees.

Sigue leyendo y provando, todos hemos pasado por lo tuyo, pero al final con ganas acabas consiguiendo  :)

un saludo!
En línea

Un byte a la izquierda.
Linton

Desconectado Desconectado

Mensajes: 239



Ver Perfil
Re: [JS] Cada vez me siento más idiota, no comprendo lo más sencillo
« Respuesta #6 en: 17 Junio 2013, 23:09 pm »

Uf ¿de verdad te sentías tan idiota como yo, al empezar?  :P

Te haré caso, muchas gracias, un saludote  :)
En línea

Linton

Desconectado Desconectado

Mensajes: 239



Ver Perfil
Re: [JS] Cada vez me siento más idiota, no comprendo lo más sencillo
« Respuesta #7 en: 18 Junio 2013, 00:27 am »

¡¡Atiza, acabo de entenderlo, con lo claro que estaba!! Mira que era sencillo  :P

Desde luego hago bien sintiéndome imbécil  :-X :-\ :-[ :-\ :-\
En línea

Linton

Desconectado Desconectado

Mensajes: 239



Ver Perfil
Re: [JS] Cada vez me siento más idiota, no comprendo lo más sencillo
« Respuesta #8 en: 20 Junio 2013, 11:47 am »

Busca otro tutorial, que sea un libro, un pdf de esos largos, que comience desde 0.

¿Cuál me recomiendas? Tengo una pila de manuales, casi todos en inglés, y con ninguno avanzo :-[

Muchas gracias, un saludo.
En línea

EFEX


Desconectado Desconectado

Mensajes: 1.171


"Dinero Facil"


Ver Perfil WWW
Re: [JS] Cada vez me siento más idiota, no comprendo lo más sencillo
« Respuesta #9 en: 20 Junio 2013, 11:58 am »

¿Cuál me recomiendas? Tengo una pila de manuales, casi todos en inglés, y con ninguno avanzo :-[

www.javascriptya.com.ar  :)
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines