IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

Réalisation d'un chronomêtre


Sujet :

AWT/Swing Java

  1. #21
    Débutant  
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    1 124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 124
    Points : 193
    Points
    193
    Par défaut
    Bonsoir tout le monde

    Je n y arrive pas pour mon chrono.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
     
    import java.awt.*;
     
     
    public class Triinssertion
     
    {
     
    String name;
     
     
     
    long startTime;
     
    private static final double t= (double)1000000000;
     
      double second;
     
    int [] tab = new int [10];
     
     
    int j,i,k,a,b,mem,longueur,compt;
     
     
    float tmp=0;
     
    long tmps= 0L;
     
     
    public Triinssertion()
    {
     
    System.out.println("Entrer votre prenom");
    name=Lire.S();
     
    System.out.println();
    System.out.println("Bienvenue sur le programme tri par insertion " + name);
     
    System.out.println();
     
    System.out.println("Entrer 10 entiers dans le désordre");
    System.out.println();
    for(a=0;a<tab.length;a++)
    {
     
    System.out.println("entier " + (a+1));
     
    tab[a]=Lire.i();
     
    }
    System.out.println();
    System.out.println("Voici l'ordre des entiers que vous avez donnees ");
    System.out.println();
     
    for(b=0;b<tab.length;b++)
    {
    System.out.print(tab[b] + " ");
    }
    System.out.println();
     
    }
     
     
     
     
    public void tri(){
     
     
    longueur=tab.length;
     
     
     
    for(j=1; j<longueur;j++)
    {
     
    mem=tab[j];
    i=j;
     
    	while(i>0 && mem<tab[i-1])
     
    	{
     
    	tab[i]=tab[i-1];
    	i=i-1;
     
    	}
     
    	tab[i]=mem;
     
    }
     
    }
     
    public void affiche()
    {
    System.out.println();
    System.out.println("Affichage fait apres le tri");
    System.out.println();
     
    for(b=0;b<tab.length;b++)
    {
    System.out.print(tab[b] + " ");
    }
    System.out.println();
    System.out.println();
    }
     
     
     
     
     
    public void begin() {
      startTime = System.nanoTime();
    }
     
     
     
     
    public void stop() {
      tmp = System.nanoTime() - startTime;
     
       second = tmp/t;
     
    }
     
     
     
     
     
     
     
    public static void main(String[] args) {
     
     
     
    Triinssertion tri = new Triinssertion();
     
     
    tri.begin();
     
    tri.tri();
     
    tri.stop();
     
     
    tri.affiche();
     
     
    System.out.println("Le tri à mis " + tri.second  + " de temps en seconde de tris" );
    System.out.println();
    System.out.println("Tri par insertion terminé " + tri.name);
     
    }
     
    }
    Exemple:

    Avec ce code il m'affiche 3.7714E-5

    J'ai cherché à droite et à gauche pour mêttre 2 chiffre apres la virgule.

    Mai j'ai rien trouvé.

    Pouvea vous m'aider.

    Merci

    Cordialement

    A bientôt

  2. #22
    Membre éclairé
    Avatar de bbclone
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 537
    Points : 704
    Points
    704
    Par défaut
    juste une petite question
    pour comparer l'efficacite/la complexite des algorithme de tri c'est pas mieux d'utiliser la notation grand O?

    O(n²) <- pas bon
    O(n³) <- pourri

    O(log(n)) <- tres bon.

    comment trouver l'ordre c'est pas compliquer ;-)
    je voudrais juste savoir pourquoi chronometer et pas utiliser la notation grand O?

  3. #23
    Débutant  
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    1 124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 124
    Points : 193
    Points
    193
    Par défaut
    Re

    je dois chronomêtrer les tri pour faire un graphique sur exel.

    A+

  4. #24
    Membre éclairé
    Avatar de bbclone
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 537
    Points : 704
    Points
    704
    Par défaut
    si tu connait la complexite tu peux faire un graphique de cette fonction
    tu peut prendre le meilleur des cas le pire des cas et la moyenne par exemple.

    par exemple le mergesort est en moyenne un tri en O(log(n))
    le tri par insertion est en moyenne un tri en O(n²)

    trace les courbe et tu verras la performance des deux lorsque tes tableau contiennet de plus en plus d'element.

    c'est sur que de chronometrer.
    immagine qu'au moment ou tu essaye de trier ton antivirus se lance et scanne un truc qui prend des ressource de ton processeur. le temps sera un peu faux.
    ou n'importe quel autre process se lance et qui bouffe du temps cpu. ton tri sera ralenti mais rien a voir avec java.
    la complexite est un moyen plus sur ;-)

  5. #25
    Débutant  
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    1 124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 124
    Points : 193
    Points
    193
    Par défaut
    Bonsoir tout le monde

    Je ne connais pas la complexité, de plus je debute en algo.

    Merci

    Cordialement

    A bientôt

  6. #26
    Membre éclairé
    Avatar de bbclone
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 537
    Points : 704
    Points
    704
    Par défaut
    ben c'est qu'est ce qu'on voit quand on etudie les algo de tri de recherche...
    l'ideal pour savoir quel algo choisir dans quel cas.
    je le sais je suis aussi etudiant

Discussions similaires

  1. réalisation d'un chronométre dans le programme
    Par masterix59 dans le forum C
    Réponses: 11
    Dernier message: 30/12/2006, 18h19
  2. Réaliser un chronomètre
    Par merlubreizh dans le forum C++
    Réponses: 7
    Dernier message: 11/01/2006, 10h16
  3. Réalisation d'un chronomètre.
    Par urbanspike dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/11/2005, 10h28
  4. Réaliser un chronomètre
    Par urbanspike dans le forum Langage
    Réponses: 1
    Dernier message: 27/11/2005, 12h24
  5. Comment réaliser un chronomètre ?
    Par theprimitive dans le forum Langage
    Réponses: 18
    Dernier message: 25/10/2005, 08h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo