• Miércoles 6 de Noviembre de 2024, 11:20

Autor Tema:  Contador Ascendente Descendente  (Leído 5478 veces)

solosequenosenada

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Contador Ascendente Descendente
« en: Lunes 1 de Marzo de 2004, 03:56 »
0
Les envío un cordial saludo a todos ustedes, y espero que puedan ayudarme a resolver mi problemita.

Necesito hacer un programa que en cada momento esté imprimiendo un contador ascendente:

1
2
3
4
5
.
.
.
.

pero cuando presione cualquier tecla y mientras la tenga presionada, dicho contador cuente ahora descendentemente y de igual forma lo imprima....... Por ejemplo:

Inicia el programa:

1
2
3
4
5
6
7
//PRESIONO CUALQUIER TECLA//
6
5
4
3
//SUELTO LA TECLA QUE PRESIONÉ//
4
5
6
7
8
.
.
.
He intentado con  while(kbhit()), pero, una de dos, o no se usarla, o no sirve para mi propósito..... supongo que es la primera...............

He buscado en la ayuda del C++ que tengo (version 3.1), pero no encuentro nada

En fin............Espero se haya entendido el planteamiento de mi problema. Así mismo espero que puedan ayudarme...............

Atte: Alejandro Medina González

PD: Mi objetivo no es hacer ese contador, en realidad estoy haciendo otra cosa, sólo utilicé el ejemplo del contador para plantear el problema que tengo.

e-mail's: solosequenosenada@todito.com
[/SIZE]

plaf

  • Miembro activo
  • **
  • Mensajes: 57
    • Ver Perfil
Re: Contador Ascendente Descendente
« Respuesta #1 en: Lunes 1 de Marzo de 2004, 06:39 »
0
mas q while(kbhit()) no deberia ser if(kbhit())? algo asi como
Código: Text
  1. while(1){
  2. printf("%d\n",n);
  3. if(kbhit()) n--;
  4. else n++;
  5. }
  6.  
y cuando tengas dudas sobre lo q hace una funcion especifica, te recomiendo msdn, a mi siempre me saca de apuros. MSDN - kbhit()

Diabliyo

  • Miembro activo
  • **
  • Mensajes: 40
    • Ver Perfil
Re: Contador Ascendente Descendente
« Respuesta #2 en: Sábado 6 de Marzo de 2004, 08:31 »
0
Hola:

No se compliquen la vida....NO es TAN TAN necesario el kbhit()   solo asi es mas facil :D..

Código: Text
  1.  
  2. #include <stdio.h>
  3. #include <conio.h>
  4. #include <ctype.h>
  5.  
  6. int main()
  7.   {
  8.   int i=0;
  9.   char _op='A';
  10.  
  11.   clrscr();
  12.   printf( "A= Ascendente\tZ=Desendente\tD=Limpiar Pantalla y Comenzar de Nuevo\tS= Salir" );
  13.    printf( "\n\n" );
  14.   while( _op!='S' )
  15.     {
  16.     _op=toupper( getch() );
  17.     switch( _op )
  18.       {
  19.       case 'A':
  20.         i++;
  21.         printf( "\n%i", i );
  22.         break;
  23.       case 'Z':
  24.         i--;
  25.         printf( "\n%i", i );
  26.         break;
  27.       case 'D':
  28.         clrscr();
  29.         i=0;
  30.         break;
  31.       }
  32.     }
  33.   printf( "\n\nPulsa para salir..." );
  34.   getch();
  35.   return 0;
  36.    }
  37.  
  38.  

Diabliyo

  • Miembro activo
  • **
  • Mensajes: 40
    • Ver Perfil
Re: Contador Ascendente Descendente
« Respuesta #3 en: Jueves 11 de Marzo de 2004, 05:22 »
0
Hola:

Si quieren compilarlo en VC++  u otro que NO acepte el CLRSCR();....pues hagan esto:

quiten <conio.h>  y clrscr();...y sustituir..
pongan <stdlib.h> y system( "cls" );

Mas que nada es para hacer un codigo fuente mas FUNCIONAL o COMPILABLE en otros compiladores :D (para evitar criticas como experiencias)

byeeeeeee

mabrev

  • Miembro MUY activo
  • ***
  • Mensajes: 126
    • Ver Perfil
Re: Contador Ascendente Descendente
« Respuesta #4 en: Jueves 11 de Marzo de 2004, 08:22 »
0
Cita de: "Diabliyo"
Hola:

Si quieren compilarlo en VC++  u otro que NO acepte el CLRSCR();....pues hagan esto:

quiten <conio.h>  y clrscr();...y sustituir..
pongan <stdlib.h> y system( "cls" );

Mas que nada es para hacer un codigo fuente mas FUNCIONAL o COMPILABLE en otros compiladores :D (para evitar criticas como experiencias)

byeeeeeee
Hola:

  El problema de hacer lo que dices es que no sirve para otros sistemas operativos tales como linux o unix, en los que en vez de utilizar system("cls") hay que utilizar system("clear"). Así que habrá que decidir entre que compile en más compiladores o funcione en otros S.O.

Saludos