Página 1 de 1

como contar tiempo

Publicado: Mar Feb 24, 2004 10:54 am
por jjsg
necesito hacer que cuando pase un determinado tiempo (10 segundos), se ejecute una linea de codigo, alguien me puede decir como hacerlos

muchas gracias

¿en que lenguaje?

Publicado: Jue Feb 26, 2004 7:47 pm
por Invitado
¿EN QUÉ LENGUAJE DE PROGRAMACIÓN?

En basic sería tan sencillo como poner

SLEEP 10

Y en c hay otra orden parecida que creo que es wait y el tiempo en milisegundos

wait (10000);

...o algo así

Si te refieres a otra operación más complicada explícala con más detalle.

Publicado: Sab Mar 06, 2004 10:24 am
por Invitado
Para hacerlo en c tienes que usar la función clock que está en time.h. Está función devuelve el tiempo en ciclos del reloj o algo así, para obtenerlo en segundos lo que devuelve tienes que dividirlo por una macro llamada CLOCKS_PER_SEC definida en el time.h también. Esto devolvería el tiempo en el instante de llamar a la función. Si quieres contar por ejemplo 10 segundos, podrías llamar a esta funcion y guardar el tiempo en la variable time1 por ejemplo. Luego podrías hacer un bucle en el que se llame a clock y se guarde el resultado en time2. Como condicion pondrías que no se salga del bucle mientras (time2-time1)<10.

Aqui esta !!!

Publicado: Dom Mar 07, 2004 3:17 am
por Diabliyo
Hola:

Pues lo mas usual seria usar en cabezera: <time.h> y usar la funcion time().... Si usamos Sleep(); necesitamos la cabezera <windows.h> y pues si usas un compilador como: Turbo C 2.0 o 4.5win NO FUNCIONARA.... Lo mejor y mas BASICO es este codigo de EJEMPLO que te dejo....

Lo que hace es poner en pantalla la palabra CARGANDO y por cada SEGUNDO pone un * solo hayq ue hacerle cambio si es que quieres que dure 10 segundos o mas...

Código: Seleccionar todo

#include <stdio.h>
#include <conio.h>
#include <ctype.h>
#include <time.h>
#include <dos.h>


/*
Puese modificar el ciclo FOR, ya que como esta puesto  i<6, osea pondra
sies *.

Puese de igualmodo modificar el TIME(0)-TM==1  dentro del IF...por logica
lo puse  ==1  osea que cada ves que pase 1 segund entrara al IF :D
*/

void cargando( void )
	{
	clrscr();

	long tm;
	int i;
	
	tm= time(0);

	for( i=0; i<6; )
		{
		if( time(0)-tm==1 )
			{
			putchar( '*' );
			sound( 500 );
			tm= time(0);
			i++;
			}
		nosound();
		}
	}

int main()
	{
	char _op='A';
	
	while( _op!='S' )
		{
		clrscr();
		printf( "-Mostrar Ejemplo del uso de TIME.H." );
		printf( "-Salir." );
		printf( "\n\n:: " );
		_op= toupper( getch() );
		switch( _op )
			{
			case 'M':
				cargando();
				printf( "\n\n\nPulsa una tecla.." );
				getch();
				break;
			}
		}
	printf( "\n\nPulsa para salir..." );
	getch();
	return 0;
	}
NOTA: la cabezera <dos.h> es para poder usar soudn() y nosound(); las cuales reproducen un sonido. Aligual <ctype.h> es para usar toupper(); la cual convierte cualquier letra a MAYUSCULAS...

byeeeeeeeee

me falto :P .....

Publicado: Dom Mar 07, 2004 3:22 am
por Diabliyo
Hola:

Por las carreras NO te puse la palabra CARGANDO...agregale este pedazo..ahi esta...

byeeeeeee

Código: Seleccionar todo

void cargando( void ) 
   { 
   clrscr(); 

   long tm; 
   int i; 
    
   tm= time(0); 

   gotoxy( 30, 10 ); printF( "Cargando" );
   printf( "\n\t\t\t      " );
   for( i=0; i<6; ) 
      { 
      if( time(0)-tm==1 ) 
         { 
         putchar( '*' ); 
         sound( 500 ); 
         tm= time(0); 
         i++; 
         } 
      nosound(); 
      } 
   }