Temps au pire d'execution d'un programme

BOB-XM2 Messages postés 180 Date d'inscription   Statut Membre Dernière intervention   -  
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

je cherche à calculer (plutôt estimer) le temps nécessaire à l'exécution d'un programme, c'est à dire, avant que le programme s'exécute, il donne une estimation du temps d'execution.
je souhaite aussi afficher le temps écoulé(facile avec <time.h>) et le temps restant(une autre approximation du temps restant)
pour mieux comprendre mon problème, je donne l'exemple de Supercopier (un utilitaire de copie de fichiers qui affiche l'estimation du temps restant et le temps écoulé)

2 réponses

Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Salut.
Il n'y a pas de méthode automatique, il faut le faire toi même. Par exemple, comment estimer le temps que va durer le programme "tetris" ? C'est impossible à savoir, car ça dépend de l'utilisateur. De manière général, un programme ne peut pas savoir ce qu'il va faire à l'avance, donc impossible d'estimer le temps.

Maintenant, si tu as un programme avec une grosse boucle "for", tu peux mesurer le temps mis par la première itération, puis multiplier par le nombre d'itération. éventuellement, tu peux corriger le temps à chaque itération.
1
BOB-XM2 Messages postés 180 Date d'inscription   Statut Membre Dernière intervention   65
 
Merci
jm'expliquer d'avantage, le programme que j'ai fait, c'est pour écrire toutes les combinaisons possibles qui se composent de 5 numéro (de 0 à 9) donc je connais déja le nombre d'itérations ( 10^5 )
mais si je vais faire avec n caractères pour une combinaison de p elements ca deviens plus long, mon but est de trouver une approximation.
0
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Tu as n^p combinaisons. Donc il te suffit de multiplier par le temps que prend une combinaison. Non ?
0