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

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  (Duda) Interrumpir una secuencia de while
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: (Duda) Interrumpir una secuencia de while  (Leído 4,130 veces)
javier_SL

Desconectado Desconectado

Mensajes: 6


Ver Perfil
(Duda) Interrumpir una secuencia de while
« en: 20 Junio 2011, 19:33 pm »

Hola, tengo una duda:

Tengo una secuencia dentro de un while, esta se debe repetir siempre. Sólo debe detenerse en el caso de que presione alguna tecla, la pregunta es como hago eso sin tener que ingresar depues de cada repeticion una tecla. La secuencia debe repetirse  continuamente hasta que presione la tecla correcta(puede ser cualquiera)

Me refiero a que si yo utilizo un cin, simpre estaré obligado a introducir algo, y la secuencia no se repetirá hasta que yo no lo haga.

Aclaración: es en lenguaje C++

Gracias


« Última modificación: 20 Junio 2011, 19:37 pm por javier_SL » En línea

Dark Invader

Desconectado Desconectado

Mensajes: 111


Lucha hasta el final para conseguir tu objetivo.


Ver Perfil
Re: (Duda) Interrumpir una secuencia de while
« Respuesta #1 en: 20 Junio 2011, 19:39 pm »

Hola,

Pues mira puedes utilizar esto:

Código
  1.    while(!GetAsyncKeyState(VK_F4))
  2. {
  3. bucle}

Esto haría el bucle infinito a no ser que se pulsara la tecla F4,es bastante buena esta función,yo siempre la utilizo en algún que otro while.

Salu2


En línea

javier_SL

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: (Duda) Interrumpir una secuencia de while
« Respuesta #2 en: 20 Junio 2011, 19:46 pm »

Hola,

Pues mira puedes utilizar esto:

Código
  1.    while(!GetAsyncKeyState(VK_F4))
  2. {
  3. bucle}

Esto haría el bucle infinito a no ser que se pulsara la tecla F4,es bastante buena esta función,yo siempre la utilizo en algún que otro while.

Salu2


Esto me srive para detener la secuencia, pero cuando apreto F4 se cierra tambien el programa. Hay alguna forma de salir del while pero no terminar el programa?
En línea

Dark Invader

Desconectado Desconectado

Mensajes: 111


Lucha hasta el final para conseguir tu objetivo.


Ver Perfil
Re: (Duda) Interrumpir una secuencia de while
« Respuesta #3 en: 20 Junio 2011, 19:55 pm »

Se me ocurre esto:
Código
  1.   #include <windows.h>
  2.   #include <stdio.h>
  3.   int main (void){
  4.  
  5.  
  6.   while(!GetAsyncKeyState(VK_F4))
  7. {
  8. printf("no vas a salir del bucle");
  9.  
  10. if(GetAsyncKeyState(VK_F4)){
  11.                            break;
  12.                            }
  13.                            }
  14.                            printf("\n\n\n\nhas salido del bucle");
  15.                            getchar();
  16.                            return 0;
  17.                            }
                           
Había otra forma pero ahora mismo no me acuerdo cual era  :xD

PD:He modificado el codigo.

Salu2
« Última modificación: 20 Junio 2011, 20:02 pm por Dark Invader » En línea

BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: (Duda) Interrumpir una secuencia de while
« Respuesta #4 en: 20 Junio 2011, 20:08 pm »

.
Instala un hook al teclado es mas optimo y no se COME al procesador, el while y esa funcion seria para verificar en algunos otros casos... es decir no es apra nada recomendable este método para algo tan simple.

Hooks
LowLevelKeyboardProc Callback Function

P.D.: Si te interesa tengo ejemplos en VB6, que se pueden pasar fácilmente a C/C++ con algunas cuantas modificaciones.

Dulces Lunas!¡.
« Última modificación: 20 Junio 2011, 20:10 pm por BlackZeroX▓▓▒▒░░ » En línea

The Dark Shadow is my passion.
javier_SL

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: (Duda) Interrumpir una secuencia de while
« Respuesta #5 en: 20 Junio 2011, 20:15 pm »

Dark Invader  muchas gracias voy a ver que puedo hacer.

BlackZeroX▓▓▒▒░░ , sinceramente no entiendo nada de lo que pusiste, tengo un nivel de programacion MUY básico, igualmente gracias
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Poder interrumpir una subrutina
Programación Visual Basic
SheKeL_C$ 6 3,252 Último mensaje 9 Febrero 2010, 14:01 pm
por ssccaann43 ©
Mata a su bebé por interrumpir su partida de Farmville « 1 2 »
Noticias
wolfbcn 13 4,753 Último mensaje 31 Octubre 2010, 03:05 am
por Draklit
[Duda] Sacar números primos de una secuencia
Programación Visual Basic
Hurubnar 2 3,768 Último mensaje 25 Febrero 2011, 16:59 pm
por Hurubnar
Interrumpir GetKeyState
Programación Visual Basic
sebah97 2 1,618 Último mensaje 7 Agosto 2011, 00:59 am
por x64core
[Duda Python] Secuencia de notas enteras de 0 a 10
Scripting
sora_ori 4 3,512 Último mensaje 11 Noviembre 2012, 15:07 pm
por sora_ori
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines