como crear un siclo infinito con "while"?
como crear un siclo infinito con "while"?
hola a todos. Pues nececito aver si me pueden ayudar con esto. Resulta que quiero ponerle contraseña a una aplicación de manéra que primero el usuario cree su contraseña, luego la ingrese, cuando es correcta aparece un mensaje que confirma que la contraseña es correcta, el problema es que no logro hacer que cuando la contraseña es incorrecta, entonces me buelva a pedir que ingrese la contraseña, ya que cuando es incorrecta simplemente se cierra. Se que hay que ingresar un siclo infinito con “while”, pero no logro entender como funciona dicho comando. Aquí dejo el código para que me indíquen donde está la falla. De paso aprobecho para preguntarles si estoy usando bien el comando “if”, ya que se que al final de un “if” debe ir “endif”, pero cuando los incerto el script me da error, mientras que si no los pongo la cosa va bien como verán xd. Bueno aquí el código:
$pass=inputbox("contraseña", "crear contraseña", "")
$respuesta = inputbox("contraseña", "ingresa contraseña previamente creada", "")
if $respuesta= $pass then msgbox(0, "bienvenido", "contraseña correcta")
While if $respuesta<> $pass then inputbox ("contraseña", "ingrese la contraseña previamente creada", "", "*m")
WEnd
saludos y gracias!.
$pass=inputbox("contraseña", "crear contraseña", "")
$respuesta = inputbox("contraseña", "ingresa contraseña previamente creada", "")
if $respuesta= $pass then msgbox(0, "bienvenido", "contraseña correcta")
While if $respuesta<> $pass then inputbox ("contraseña", "ingrese la contraseña previamente creada", "", "*m")
WEnd
saludos y gracias!.
Re: como crear un siclo infinito con "while"?
Puedes Hacerlo Así:
Saludos
Código: Seleccionar todo
Do
$pass=inputbox("contraseña", "crear contraseña", "")
$respuesta = inputbox("contraseña", "ingresa contraseña previamente creada", "")
Until ($pass==$respuesta)
Saludos
- ............................................
......................................
Re: como crear un siclo infinito con "while"?
OK!. gracias por la ayuda. eso si me quedan dudas. resulta que cuando utilizo el código que me indicas, el ciclo no es infinito, ya que después de ingresar 3 veces una contraseña incorrecta, no buelve a preguntarme y en vez de eso se cierra. por otro lado parece ser que el comando "do" es mas sencillo que el "while", sinembargo me gustaría si porfavor me pueden indicar como funciona, ya que es un comando usado sobretodo en las GUI que me interesa aprender. he visto en la ayuda pero no he tenido éxito aplicándolo. otra pregunta es que significa la convinación de dos signos igual juntos?: ==.
saludos!.
saludos!.
Re: como crear un siclo infinito con "while"?
Explicación
== es para comparar cadenas caso sensitivo a minúsculas y mayúsculas.
con while lo podrías hacer así.
Saludos
Código: Seleccionar todo
Do ; hacer
$pass=inputbox("contraseña", "crear contraseña", "")
$respuesta = inputbox("contraseña", "ingresa contraseña previamente creada", "")
Until ($pass==$respuesta) ; hasta que $pass == $respuesta
== es para comparar cadenas caso sensitivo a minúsculas y mayúsculas.
con while lo podrías hacer así.
Código: Seleccionar todo
Local $pass=inputbox("contraseña", "crear contraseña", "")
Local $respuesta = inputbox("contraseña", "ingresa contraseña previamente creada", "")
While Not($pass==$respuesta) ; hacer mientras $pass y $respuestas no sean iguales
$pass=inputbox("contraseña", "crear contraseña", "")
$respuesta = inputbox("contraseña", "ingresa contraseña previamente creada", "")
WEnd
Saludos
- ............................................
......................................
Re: como crear un siclo infinito con "while"?
muchas gracias. si ahora comprendo mejor. eso si no entiendo que función cumplen las dos primeras lineas declaradas en el codigo del while, ya que tienen el comando local que desconosco en que situaciones se debe poner.
perdon que pregunte tanto, pero es que estoy aprendiendo hace poco xd.
saludos y gracias.
perdon que pregunte tanto, pero es que estoy aprendiendo hace poco xd.
saludos y gracias.
Re: como crear un siclo infinito con "while"?
Local quiere decir el tipo de variable.
osea local jajaja.
Es lo mas básico del lenguaje.
te recomiendo leas estos dos libros y la ayuda en español si se te hace difícil el ingles.
http://www.sendspace.com/file/dqjhhx
saludos
osea local jajaja.
Es lo mas básico del lenguaje.
te recomiendo leas estos dos libros y la ayuda en español si se te hace difícil el ingles.
http://www.sendspace.com/file/dqjhhx
saludos
- ............................................
......................................
Re: como crear un siclo infinito con "while"?
hola. aaa OK xd. muchas gracias por la ayuda y por el material, no lo tenía a sique me pondré a estudiarlo xd.
saludos!.
saludos!.