美文网首页Java编程解题
第六章第三十二题(游戏:赢取双骰子赌博游戏的机会)(Game:

第六章第三十二题(游戏:赢取双骰子赌博游戏的机会)(Game:

作者: in2013 | 来源:发表于2020-05-21 18:56 被阅读0次

    **6.32(游戏:赢取双骰子赌博游戏的机会)修改编程练习题6.30使该程序运行10000次,然后显示赢得游戏的次数

    **6.32(Game: chance of winning at craps)Revise Exercise 6.30 to run it 15,000 times and display the number of winning games.

    下面是参考答案代码:

    // https://cn.fankuiba.com
    public class Ans6_32_page205 {
        public static void main(String[] args) {
            int count = 0;
            for (int c = 0; c < 10000; c++) {
                int guessOne = random(6);
                int guessTwo = random(6);
                int guessThree;
                int sum = guessOne + guessTwo;
                int guessTemp = 0;
                boolean nextGuess = true;
    
                //System.out.println("You rolled " + guessOne + " + " + guessTwo + " = " + sum);
                if (sum == 7 || sum == 11) {
                    count = count + 1;
                    //System.out.println("You win");
                } else if (sum == 2 || sum == 3 || sum == 12) {
                    //System.out.println("You lose");
                }
                else {
                    while (nextGuess) {
                        //System.out.println("point is " + sum);
                        guessThree = random(6);
                        if (guessThree == 7) {
                            //System.out.println("You rolled 7 + " + guessThree + " = " + (guessThree * 2));
                            //System.out.println("You win");
                            count++;
                            nextGuess = false;
                        } else if (guessThree == guessOne || guessThree == guessTwo || guessThree
                                == guessTemp) {
                            //System.out.println("You rolled " + guessThree + " + " + guessThree + " = " + (guessThree * 2));
                            //System.out.println("You win");
                            count++;
                            nextGuess = false;
                        } else {
                            //System.out.println("You rolled " + guessThree + " + " + sum + " = " + (guessThree + sum));
                            //System.out.println("You lose");
                            break;
                        }
                        guessTemp = guessThree;
                    }
                }
            }
            System.out.println(count);
        }
    
        public static int random(int guess) {
            return 1 + (int) (Math.random() * guess + 1);
        }
    }
    
    

    适用Java语言程序设计与数据结构(基础篇)(原书第11版)Java语言程序设计(基础篇)(原书第10/11版)更多内容

    相关文章

      网友评论

        本文标题:第六章第三十二题(游戏:赢取双骰子赌博游戏的机会)(Game:

        本文链接:https://www.haomeiwen.com/subject/nwvtahtx.html