
在游戏里,有一种宝箱,打开这个宝箱获得传奇武器的概率是
20%,现在你打开5个这样的宝箱,获得传奇武器的概率是多少?


平均值即期望,有时我们会被平均,很多样本来实验大概是每人完5次就即中奖。
- public class WinngPrize {
- private double chance;
- private int playTime;
- private int N;
-
- public WinngPrize(double chance, int playTime, int N)
- {
- if( chance < 0 || chance > 1.0)
- throw new IllegalArgumentException("chance must be 0 < chance < 1");
-
- if( playTime <= 0 || N <= 0)
- throw new IllegalArgumentException("playTime or N must be > 0 ");
-
- this.chance = chance;
- this.playTime = playTime;
- this.N = N;
- }
-
- public void run(){
-
- int wins = 0;
-
- for ( int i = 0; i < N; i ++)
- {
- if(play())
- wins ++;
- }
- System.out.println("winng rate:" + (double)wins/N);
- }
-
- private boolean play(){
- for(int i = 0; i < playTime; i ++)
- if(Math.random() < chance)
- return true;
- return false;
- }
-
- public static void main(String[] args) {
-
- double chance = 0.2;
- int playTime = 10;
- int N = 1000000;
-
- WinngPrize exp = new WinngPrize(chance, playTime, N);
- exp.run();
- }
-
- }