Affiche un chronomètre qui n'utilise pas le processeur à 100% (compilé avec borland c++ 5.02)

Contenu du snippet

Ce code ne sert pas vraiment à grand chose, si ce n'est à m'aider à comprendre un peu mieux le C++, ainsi qu'il peut servir aussi aux autres débutants comme moi.
Pour les personnes un peu plus expertes, veuillez me dire si ce code est bien ou pas du tout. D'ailleurs, je voulais savoir si le temps calculé était bien le bon, je pense qu'il doit y avoir un petit décalage, mais je n'avais pas de chronometre sous la main pour vérifier....
Voilà, je vous laisse regarder le code maintenant :)

Source / Exemple :


#include <windows.h>
#include <conio.h>
#include <iostream.h>

struct temps
{
unsigned int heures;
unsigned int minutes;
unsigned int secondes;
unsigned int dixiemes;
};

void afficher_heure(temps);
temps augmenter_heure(temps);
void chronometre(temps);
void menu(void);

int main(void)
{
temps t;
t.heures=0;t.minutes=0;t.secondes=0;t.dixiemes=0;

menu();

clrscr();

chronometre(t);

getch();
return 0;
}

void afficher_heure(temps t)
{
gotoxy(5,12);
cout<<t.heures<<" heure(s) "<<t.minutes<<" minute(s) "<<t.secondes<<" seconde(s) et "<<t.dixiemes<<" dixieme(s) de secondes.";
}

temps augmenter_heure(temps t)
{

if (t.dixiemes<9) t.dixiemes+=1; else {{t.dixiemes=0;}
if (t.secondes<59) t.secondes+=1; else {{t.secondes=0;}
if (t.minutes<59) t.minutes+=1; else {{t.minutes=0;t.heures+=1;}}}}
return t;
}

void menu(void)
{
for (int i=0;i<30;i++)
	{
	cout<<"-";
   }
cout<<" MENU ";
for (int i=0;i<30;i++)
	{
	cout<<"-";
   }
cout<<"\nCeci est un simple chronometre";
cout<<"\nCependant, il n'utilise pas votre processeur a 100%...\n";
cout<<"\nRemarque importante :";
cout<<"\nPour arreter le chronometre,\n";
cout<<"Utilisez la combinaison de touches Ctrl+C";
cout<<"\n\n";
for(int i=0;i<(30*2+6);i++) {cout<<"-";}
cout<<"\n";
cout<<"Appuyez sur une touche pour demarrer le chronometre...";
getch();
}

void chronometre(temps t)
{
int n=0;
gotoxy(5,10);
cout<<"Vous avez lance le chronometre depuis : \n";

do
	{
if (n=0) {afficher_heure(t); n++;}

Sleep(100);
afficher_heure(t);
t=augmenter_heure(t);
	} while (t.heures<100);

}

Conclusion :


Bien sûr, tous vos commentaires sont les bienvenus...

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.