• Lunes 23 de Diciembre de 2024, 17:19

Autor Tema:  Tengo Un Problema  (Leído 2236 veces)

franc

  • Miembro MUY activo
  • ***
  • Mensajes: 157
    • Ver Perfil
Tengo Un Problema
« en: Domingo 14 de Diciembre de 2003, 22:48 »
0
Bueno yo uso el borlandc 3.1 y a la hora de ejecutar un programa, la ventana de ejecucion tiene un tamaño determinado, por lo que si imprimes por ejemplo:

num=100;
for(i=0;i<=num;i++)

printf("\n %d",i);

en la ventana solo aparece impreso del 70 o asi hasta el 100, en verdad si que imprime todo pero claro... en la ventana no se ve todo.

Mi pregunta es .... Se puede controlar el tiempo que hay entre la impresion de una secuencia de numeros ?

De forma que por ejemplo cada segundo imprima 3 numeros y asi comprobar que verdaderamente imprime los 100 numeros deseados.

El ejercicio que tengo no es de 100 numeros, esto es solo un ejemplo, solo necesito saber si es posible hace como un "pause" dentro de un programa en C


gracias :)

carmamezo

  • Miembro MUY activo
  • ***
  • Mensajes: 232
    • Ver Perfil
Re: Tengo Un Problema
« Respuesta #1 en: Lunes 15 de Diciembre de 2003, 00:27 »
0
has probado la función sleep???
Un saludo
No hay tonto más molesto que el ingenioso.

franc

  • Miembro MUY activo
  • ***
  • Mensajes: 157
    • Ver Perfil
Re: Tengo Un Problema
« Respuesta #2 en: Lunes 15 de Diciembre de 2003, 10:51 »
0
en borlandc 3.1 no existe sleep, lo he buscado en la ayuda pero no hay nada de sleep. Hay otra cosa parecida ?

alguien lo sabe ?

gracias !! :)

© Jonathan ©

  • Moderador
  • ******
  • Mensajes: 1671
  • Nacionalidad: ar
    • Ver Perfil
    • http://www.einstec.com.ar
Re: Tengo Un Problema
« Respuesta #3 en: Lunes 15 de Diciembre de 2003, 12:53 »
0
Hola, yo tengo una idea, que no se si funcionaria, mas bien creo que es una idiotez, pero por las dudas lo digo.
   Se podria buscar el valor hexadecimal de la tecla PUSE que traen todos los teclados y cada tantas lineas que se presione, luego que se presione cualquier otra para continuar, ls retardos para que se presionen los haces con delay(); ... bueno, talvez no sirva de nada esta idea que ppropongo, pero si lo que deseas es crear un PAUSE en C, puedes utilizar el mismo pause que trae el teclado el cual el DOS o windows reconocen como pause. Bueno un saludo grande.  :hola:
EINSTEC Tecnología «La única fuente del conocimiento es la experiencia.»

«Lo importante es no dejar de hacerse preguntas.»

carmamezo

  • Miembro MUY activo
  • ***
  • Mensajes: 232
    • Ver Perfil
Re: Tengo Un Problema
« Respuesta #4 en: Lunes 15 de Diciembre de 2003, 13:27 »
0
Si no existe la función pause o Sleep, puedes hacerte tú mismo una función que lo haga.
Por ejemplo puedes llamar a una función que hace un par de bucles encadenados y que tan sólo cuenta números. Por ejemplo:

Código: Text
  1.  
  2. void pausar()
  3. {
  4. int i,j;
  5. for (i=0;i&#60;10000;i++){
  6.  
  7.      for(j=0;j&#60;10000;j++)
  8.      {}
  9.  
  10. }
  11. }
  12.  
  13.  

Luego puedes regularlo con el valor que quieras. Es una mierda pero al menos podrás mostrar lo que quieres poco a poco (Ten en cuenta que el proceso tardará más o menos dependiendo del procesador).
De todas formas el mejor sistema es utilizar los temporizadores del sistema: librería time.h, función clock(), que te dice el tiempo que ha pasado desde que comenzó el programa.  Mira a ver si la encuentras. Suerte y un saludo.
No hay tonto más molesto que el ingenioso.

franc

  • Miembro MUY activo
  • ***
  • Mensajes: 157
    • Ver Perfil
Re: Tengo Un Problema
« Respuesta #5 en: Lunes 15 de Diciembre de 2003, 16:01 »
0
ya pensé en los bucles, pero eske es un consumo de memoria importante :P lo de clock lo he mirado en la ayuda, probare hacer algo con eso. Tambien me dicen de una funcion delay() probaré también.

Gracias :)

Super_G

  • Miembro MUY activo
  • ***
  • Mensajes: 375
    • Ver Perfil
Re: Tengo Un Problema
« Respuesta #6 en: Martes 16 de Diciembre de 2003, 05:44 »
0
ALGO ASI con delay();
//*********************
int cont=0
num=100;
for(i=0;i<=num;i++)
{
printf("\n %d",i);
cont++;
if(cont>2)
{cont =0;
  delay(1000);
}

}
//*******************

es lo que entendi

franc

  • Miembro MUY activo
  • ***
  • Mensajes: 157
    • Ver Perfil
Re: Tengo Un Problema
« Respuesta #7 en: Martes 16 de Diciembre de 2003, 14:59 »
0
que libreria usa delay() ?

porque me dice lo tipico, "delay" should have a prototype

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Tengo Un Problema
« Respuesta #8 en: Martes 16 de Diciembre de 2003, 15:05 »
0
sleep si existe em borland 3.1, seguramente debes incorporar <time.h>o sino <dos.h>.. creo que tienes una version de borland incompleta o mal configurada.
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

Super_G

  • Miembro MUY activo
  • ***
  • Mensajes: 375
    • Ver Perfil
Re: Tengo Un Problema
« Respuesta #9 en: Miércoles 17 de Diciembre de 2003, 00:40 »
0
me parece que esta en DOS.H