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

Java Discussion :

problème avec loi uniforme discret


Sujet :

Java

  1. #1
    Membre régulier
    Homme Profil pro
    étudiant
    Inscrit en
    Septembre 2011
    Messages
    342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2011
    Messages : 342
    Points : 124
    Points
    124
    Par défaut problème avec loi uniforme discret
    Bonjour,
    je doit tracer les courbes de loi uniforme discret avec les caractéristiques dans la pièce ci-joint.
    mais ce que j'ai eu toujours des valeurs à 1 pas ce que je veux pour tracer la densité et la fonction de répartition
    voici mon code:
    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
     
     
    public class Test {
    	static double ValeurRamdom[]=new double[100000];                //tableau contient les valeurs generer par Math.random
    	static double ValeurRamdomAuCarré[]=new double[100000]; //tableau contient les valeurs au carrées generer par Math.random 
    	static double tab1[]=new double[100000]; //tableau contient le valeur de l'esperance pour chaque valuer de N
    	static double tab2[]=new double[100000];         //tableau contient le valeur de varaince pour chaque N
    	static double Ex;                                          
            static int a=0;
            static int b=1;
    	private static JFreeChart chart;
    	public static void Graphique() throws Exception {          
    		XYSeriesCollection dataset = new XYSeriesCollection();
    		XYSeries xyseries=new XYSeries("Courbe");
     
             for (int i=0;i<ValeurRamdom.length;i++){
     
                             if(tab1[i]<a)
                                 xyseries.add(i,tab1[i]= 0);
                            //2ème condition si x supérieur ou égal à a et inférieur
                              //à b
    			if((tab1[i]>=a)&&(tab2[i]<b))
                                 xyseries.add(i,((1+Math.abs(tab1[i]-a))/(b-a+1)));
     
                            //3ème condition si x supérieur ou égal à b
    			if(tab1[i]>=b)
                                xyseries.add(i,tab1[i]= 1);
     
             }
    		dataset.addSeries(xyseries);
    		chart = ChartFactory.createXYLineChart( "Esperance en fonction de N",  
    				"",  
    				"",  
    				dataset,  
    				PlotOrientation.VERTICAL,  
    				true,  
    				false,  
    				false );
    		final XYPlot plot = chart.getXYPlot();
    		NumberAxis numberAxis = (NumberAxis) plot.getRangeAxis();
    		numberAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
    		chart.setBackgroundPaint(Color.white);
    		ChartFrame frame1=new ChartFrame("Courbe1", chart);
    		frame1.setVisible(true);
    		frame1.setSize(700, 700);
    	}
     
           public static void Graphique2() throws Exception {          //Le tracage de l'esperance en fonction de N
     
    		XYSeriesCollection dataset = new XYSeriesCollection();
    		XYSeries xyseries=new XYSeries("Courbe");
     
             for (int i=0;i<ValeurRamdom.length;i++){
     
                 if((tab1[i]>=0)&&(tab1[i]<=1)){
                            xyseries.add(i,1/((b-a)+1));
                        }
     
             }
    		dataset.addSeries(xyseries);
    		.....
    }
     
     
    	public static void main(String[] args) throws Exception {
    		......
     
    		Graphique();
     
     
    	}
     
    }
    merci pour l'aide
    Images attachées Images attachées  

  2. #2
    Membre éclairé Avatar de JoeChip
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    536
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 536
    Points : 803
    Points
    803
    Par défaut
    merci pour l'aide
    Tu devrais la lire, l'aide, parce que là on peut pas t'aider.
    Sans danger si utilisé conformément au mode d'emploi.

    (anciennement BenWillard, enfin moins anciennement que ... enfin bon c'est une longue histoire... Un genre de voyage dans le temps...)

  3. #3
    Membre régulier
    Homme Profil pro
    étudiant
    Inscrit en
    Septembre 2011
    Messages
    342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2011
    Messages : 342
    Points : 124
    Points
    124
    Par défaut
    merci JoeChip mais je suis sûre qu'il y ' un problème dans le code mais je ne sais pas où il est

  4. #4
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    a vallant 0 et b vallant 1, et ne changeant nulle part de valeur, lors de l'exécution de la méthode graphique(),

    tab1[i]<a est toujours faux (tab[i] vallant 0, 0 < 0 est faux)
    tab1[i]>=b est toujours faux de même (0 >= 1)
    (et comme le seul code susceptible de modifier tab1[i] est soumis à ces conditions)

    mais ((tab1[i]>=a)&&(tab2[i]<b)) est bien vraie (0>=0 et 0 < 1)

    donc le code
    xyseries.add(i,((1+Math.abs(tab1[i]-a))/(b-a+1)));

    est bien exécuté

    or ((1+Math.abs(tab1[i]-a))/(b-a+1)), vaut

    (1 + abs( 0 - 1 ) ) / ( 1 - 0 + 1 )

    soit 2 / 2, soit 1, donc effectivement ta série ne contient au final que la valeur 1 !
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

Discussions similaires

  1. Problème avec filtre moyenneur "flou uniforme" d’une image
    Par SmileSoft dans le forum C++Builder
    Réponses: 15
    Dernier message: 23/04/2008, 17h29
  2. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 11h10
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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