Bonjour,

J'ai écrit un petit programme qui est sensé testé l'évolution de mon "capital" en fonction du résultat d'un lancer de pièce.

Le lancer est caractérisé par un test de capital : "si il est multiple de 3"
--> un type de probabilité
else --> un autre

Je stocke les données dans un tableau pour les renvoyer par après.
Mais lorsque je veux tester ma classe (en vérifiant ma sortie à la console avec des System.out.println)

J'ai d'abord mon résultat face/pile (ce qui semble correcte) mais ensuite j'ai deux incrémentations ou "desincrémentations" au lieu d'une.

Je ne trouve pas le problème dans mon code...

Quelqu'un aurait-il la sagesse d'y jeter un oeil ?



Voici mon code pour la classe :
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
 
public class Testd {
 
    public Testd(String m){
        int []stockage =new int[100];
        int a = Integer.parseInt(m);
        for(int i = 0; i < 100; i++) {
 
        if (a%3==0)
                {double pe=0.095;
                double x = Math.random();
                if (x<=pe)
                {System.out.println("face");
                int b = ++a;
                System.out.println(b);
                stockage[i]=++a;
                a=stockage[i];}
 
                else
                {System.out.println("pile");
                int b = --a;
                System.out.println(b);
                stockage[i]=--a;
                a=stockage[i];}
            }
        else{
            double pe=0.745;
            double x = Math.random();
            if (x <=pe)
            {System.out.println("face");
            int b = ++a;
            System.out.println(b);
            stockage[i]=++a;
            a=stockage[i];}
 
            else
            {System.out.println("pile");
            int b = --a;
            System.out.println(b);
            stockage[i]=--a;
            a=stockage[i];}
        }
        System.out.println(stockage[i]);
            }
 
        }
}
Et pour la classe qui me sert de test :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
import java.util.Scanner;
 
public class TestpourD {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Veuillez donner votre fond :");
        String m1 = sc.nextLine();
        Testd lancer = new Testd(m1);
 
 
    }
 
}
En remerciant l'âme charitable !