Java代码蒙特卡罗方法求盒子取球概率问题

蒙特卡罗方法求盒子取球概率问题

    • 题目
    • Java代码实现
    • 输出

题目

三个盒子, 分别装有白球、白球, 白球、黑球, 黑球、黑球。
问: 当取出一个球是黑色时,再取出另外一球也是黑色的概率。

Java代码实现

public class Main {
    public static void main(String[] args) {
        Random random = new Random();
        //模拟三个盒子 0是白色, 1 是黑色
        Box[] boxes = new Box[]{
                new Box(0, 0),
                new Box(0, 1),
                new Box(1, 1)
                //当拿到一个黑色时,再取出一个的概率是多少?

        };
        //取第一个球,是黑色时的次数
        double countBlackOneCount = 0;
        //另一个个球,仍然是黑色的次数
        double countBlackTwoCount = 0;
        //总共取球次数
        int count = 1000000;
        for(int i =0;i

输出

总取球次数: 1000000
取出第一个球是黑球的次数: 500014.0
取出黑球后取另一个球仍然是黑球的次数: 333503.0
取出第二个球是黑球的次数/取出第一个球是黑球的次数: 0.666987324354918%

你可能感兴趣的:(统计方法)