"Pause" délimiter dans le temps en C++

Résolu
vladivostok Messages postés 228 Date d'inscription   Statut Membre Dernière intervention   -  
 Chris -
Bonjour,

Je cherche un moyen de faire une "pause" d'environs 2 a 3 secondes en C++ jusqu'à présent je faisait une boucle quasi infinie mais c'est pas propre et pas précis.

Merci pour votre aide.

3 réponses

mrd9991 Messages postés 179 Date d'inscription   Statut Membre Dernière intervention   7
 
salut, voilà un programme que j'ai fait pour vous, il fait une pause de 10 sec, mais tu peux changer la variable duree, bien sure tu peux vérifier le résultat avec un chronomètre.

#include <iostream>
#include <time.h>
using namespace std;

int main(int argc, char *argv[])
{
int i,j,duree;
duree = 10 ; // pause pour une durée de 10 seconds

cout<<"c'est parti:"<<endl;
i =time(NULL);
j= i+ duree;

while (i<=j)
i =time(NULL);

cout<<"ca marche"<<endl;
system("PAUSE");
return EXIT_SUCCESS;
}


ce programme à été fait sous dev-cpp, c'est une méthode d'amateur, il existe des façon plus professionnelles.
0
Steve
 
C'est du grand n'importe quoi !!!
Lire le K&R pour apprendre le C au lieu de poster des énormités pareilles !!!
0
mrd9991 Messages postés 179 Date d'inscription   Statut Membre Dernière intervention   7
 
voila une 2ème méthode que je pense qu'elle est la meilleure car elle est plus précise.

#include <time.h>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
double a,b,c=0;
a=CLOCKS_PER_SEC;
b=clock(); // demmarage de la pause
while( (c-b)/a < 10) // pause de 10 secondes
c = clock();
cout<<"vous avez fait une pause de: "<<(c-b)/a<<" secondes"<< endl; // verification
system("PAUSE");
return EXIT_SUCCESS;
}
0
vladivostok Messages postés 228 Date d'inscription   Statut Membre Dernière intervention   20
 
Merci beaucoup,

C'est sur que c'est beaucoup plus précis que mes boucle for ou while ;-)
En tous cas merci
0
Chris
 
Hein ?!!!
Ce code est une CATASTROPHE d'un newbie n'ayant jamais programmé !!!
Faire ça pour faire un sleep, c'est une HONTE !
0