HELP Durée de tri en C ?????????? HELP please !!

HELP Durée de tri en C ?????????? HELP please !! - C++ - Programmation

Marsh Posté le 15-01-2003 à 21:36:19    

Bonjour à tous!
 
Je galère à chercher comment on détérmine la durée de tri de nombres en langage C. :pt1cable:  
PS: J'ai utilisé le tri SHELL !!!!!
 
J'ai vraiment besoin d'un coup de pouce MERCI !!!! :hello:


---------------
Il n'y a pas de péché sur la Terre pourvu que Dieu ne pardonne à celui qui se repent sincèrement. L'homme ne peut pas commettre de péché capable d'épuiser l'amour infini de Dieu.
Reply

Marsh Posté le 15-01-2003 à 21:36:19   

Reply

Marsh Posté le 15-01-2003 à 21:39:44    

Durée ? Ou complexité ?


---------------
Le site de ma maman
Reply

Marsh Posté le 15-01-2003 à 21:41:32    

ca dépend de la machine... :D

Reply

Marsh Posté le 15-01-2003 à 21:43:46    

Juste pour info, si c'est la durée du tri qui t'intéresse, tu as intérêt à passer par des appels système dans ton code C. Tu demande la date avant le tri, la date après, tu soustrais dans le sens qui va bien(TM).


---------------
Le site de ma maman
Reply

Marsh Posté le 15-01-2003 à 21:54:41    

Cherrytree a écrit :

Juste pour info, si c'est la durée du tri qui t'intéresse, tu as intérêt à passer par des appels système dans ton code C. Tu demande la date avant le tri, la date après, tu soustrais dans le sens qui va bien(TM).


 
Merci bien mais justement je ne suis qu'un novice !
Je ne suis qu'en 1ère année de BTS info indus ! :D  
Tu n'aurais pas un site ou deux (cohérent) qui explique cette démarche par hasard ? :sarcastic:  
 
Merci bien !


---------------
Il n'y a pas de péché sur la Terre pourvu que Dieu ne pardonne à celui qui se repent sincèrement. L'homme ne peut pas commettre de péché capable d'épuiser l'amour infini de Dieu.
Reply

Marsh Posté le 15-01-2003 à 22:14:05    

Je n'ai pas de site à te conseiller.
 
En revanche, de ce que je me souviens de mes cours de C sous Unix, on utilisait une fonction C : "system()". Entre les parenthèses, tu appelles une fonction du système d'exploitation. Il doit y avoir une fonction qui donne l'heure : time ou timestamp, je sais plus. Peut être autre chose.
 
Ensuite, il te suffit de faire un appel en début de ton algorithme de tri, et un en fin.


---------------
Le site de ma maman
Reply

Marsh Posté le 15-01-2003 à 22:15:06    

Cherrytree a écrit :

Je n'ai pas de site à te conseiller.
 
En revanche, de ce que je me souviens de mes cours de C sous Unix, on utilisait une fonction C : "system()". Entre les parenthèses, tu appelles une fonction du système d'exploitation. Il doit y avoir une fonction qui donne l'heure : time ou timestamp, je sais plus. Peut être autre chose.
 
Ensuite, il te suffit de faire un appel en début de ton algorithme de tri, et un en fin.


 
OK je vais essayer ca merci bien !
 :bounce:  :hello:


---------------
Il n'y a pas de péché sur la Terre pourvu que Dieu ne pardonne à celui qui se repent sincèrement. L'homme ne peut pas commettre de péché capable d'épuiser l'amour infini de Dieu.
Reply

Marsh Posté le 15-01-2003 à 22:17:35    

Cherrytree a écrit :

Je n'ai pas de site à te conseiller.
 
En revanche, de ce que je me souviens de mes cours de C sous Unix, on utilisait une fonction C : "system()". Entre les parenthèses, tu appelles une fonction du système d'exploitation. Il doit y avoir une fonction qui donne l'heure : time ou timestamp, je sais plus. Peut être autre chose.
 
Ensuite, il te suffit de faire un appel en début de ton algorithme de tri, et un en fin.


 
euh ca franchement, et ne le prends pas mal, c vraiment TRES TRES crade [:vomi]
 
sur unix/linux : man 2 time
 

Code :
  1. ...
  2. #include <time.h>
  3. time_t time(time_t *t);
  4. ...


 
(si tu n'es pas obligé de coder toi meme le tri, man qsort, tri tres rapide, tu peux toujours comparer les résultats obtenus)


Message édité par HappyHarry le 15-01-2003 à 22:31:30
Reply

Marsh Posté le 15-01-2003 à 22:26:27    

C'est idiot, mais je viens juste de me rappeler time.h
Donc [:grilled] pour la forme. Juste un truc, si tu es là pour apprendre à coder, code ton tri à la main.


---------------
Le site de ma maman
Reply

Marsh Posté le 15-01-2003 à 22:27:26    

stuffer a écrit :


 
OK je vais essayer ca merci bien !
 :bounce:  :hello:  

Fais plutôt ce que Harry te conseille, c'est plus simple et ça sert mieux tes intérêts.


---------------
Le site de ma maman
Reply

Marsh Posté le 15-01-2003 à 22:27:26   

Reply

Marsh Posté le 15-01-2003 à 22:28:35    

Cherrytree a écrit :

Fais plutôt ce que Harry te conseille, c'est plus simple et ça sert mieux tes intérêts.


 
sté pas méchant hein, mais faire un appel a system(), c'est mal(TM) dans ces cas la
 

Reply

Marsh Posté le 15-01-2003 à 22:30:25    

Cherrytree a écrit :

C'est idiot, mais je viens juste de me rappeler time.h
Donc [:grilled] pour la forme. Juste un truc, si tu es là pour apprendre à coder, code ton tri à la main.


 
pour le tri effectivement s'il apprend les méthodes de tri, mieux vaut les faire a la main

Reply

Marsh Posté le 15-01-2003 à 22:30:47    

HappyHarry a écrit :


 
sté pas méchant hein, mais faire un appel a system(), c'est mal(TM) dans ces cas la
 
 

Sûr. J'ai voulu aider mais je ne l'ai pas fait avec discernement.
 
PS: Harry je t'aime, alors ne t'inquiète pas. :love:


---------------
Le site de ma maman
Reply

Marsh Posté le 15-01-2003 à 22:34:19    

Cherrytree a écrit :


PS: Harry je t'aime, alors ne t'inquiète pas. :love:  


euh, il ferait mieux de s'inquiéter dans ce cas... Surtout toi qui ne parle que de sodomie depuis quelques temps :o

Reply

Marsh Posté le 15-01-2003 à 22:34:40    

Cherrytree a écrit :

Harry je t'aime


 
quoted :o


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 15-01-2003 à 22:34:57    

lorill a écrit :


euh, il ferait mieux de s'inquiéter dans ce cas... Surtout toi qui ne parle que de sodomie depuis quelques temps :o


 
[:totoz]

Reply

Marsh Posté le 15-01-2003 à 22:34:59    

lorill a écrit :


euh, il ferait mieux de s'inquiéter dans ce cas... Surtout toi qui ne parle que de sodomie depuis quelques temps :o


 
 [:xp1700]


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 15-01-2003 à 22:38:03    

plus serieusement, je dirais que tu devrais aussi jeter un coup d'oeil du coté de  
 

Code :
  1. int gettimeofday(struct timeval *tv, struct timezone *tz)


 

Reply

Marsh Posté le 15-01-2003 à 22:53:56    

C'est pas Marnie ? Ah ! Pardon, je croyais parler à Marnie. Désolé.


---------------
Le site de ma maman
Reply

Marsh Posté le 15-01-2003 à 22:54:55    

lorill a écrit :


euh, il ferait mieux de s'inquiéter dans ce cas... Surtout toi qui ne parle que de sodomie depuis quelques temps :o

Je joue de la musique. Nuance.


---------------
Le site de ma maman
Reply

Marsh Posté le 16-01-2003 à 01:32:59    

voila un truc que jai retrouvé dans mes archives.. ca fait tres tres loin.. alors...  
mais ca semble pas trop compliqué :p
 

Code :
  1. void AfficherTemps(time_t time0)
  2. {
  3.    time_t time1;
  4.    double delta;
  5.    time(&time1);
  6.    delta=difftime(time1,time0);
  7.    printf("\nTemps ecoule durant l'operation: %lu seconde",\
  8.            (Ulong)delta);
  9.    if ( delta )
  10.     printf("s" );
  11.    printf("\n" );
  12. }


 
et tu auras compris que pour récupéré le temps c :
 

Code :
  1. time(* time_t)


 
voila, j'espère que ca t'aideras :)
 
 
ps: euh... Ulong c un typedef pour unsigned long :D
pss: Et il faut aussi inclure time.h
 

Reply

Marsh Posté le 16-01-2003 à 01:35:08    

wouatouwouatou a écrit :

voila un truc que jai retrouvé dans mes archives.. ca fait tres tres loin.. alors...  
mais ca semble pas trop compliqué :p
 

Code :
  1. void AfficherTemps(time_t time0)
  2. {
  3.    time_t time1;
  4.    double delta;
  5.    time(&time1);
  6.    delta=difftime(time1,time0);
  7.    printf("\nTemps ecoule durant l'operation: %lu seconde",\
  8.            (Ulong)delta);
  9.    if ( delta )
  10.     printf("s" );
  11.    printf("\n" );
  12. }


 
et tu auras compris que pour récupéré le temps c :
 

Code :
  1. time(* time_t)


 
voila, j'espère que ca t'aideras :)
 
 
ps: euh... Ulong c un typedef pour unsigned long :D
pss: Et il faut aussi inclure time.h
 
 


 
un peu a la bourre toi ;)

Reply

Marsh Posté le 16-01-2003 à 01:43:04    

lol... dsl.. javais pas vu ton post :jap:

Reply

Marsh Posté le 16-01-2003 à 05:12:10    

Code :
  1. #include <time.h>
  2. //précision: seconde
  3. time_t start= time(NULL);
  4. //code à chronométrer
  5. time_t stop= time(NULL);
  6. printf("Durée: %d secondes"; difftime(stop, start) );
  7. //précision: 1/CLOCKS_PER_SEC seconde (variable selon machine)
  8. clock_t start2= clock();
  9. //code à chronométrer
  10. clock_t stop2= clock();
  11. printf("Durée: %d secondes"; (double)(stop2-start2) / CLOCKS_PER_SEC );


---------------
Bricocheap: Montage de ventilo sur paté de mastic silicone
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed