美文网首页
掷骰子游戏

掷骰子游戏

作者: Stroman | 来源:发表于2018-04-01 11:36 被阅读37次

问题

根据用户输入的骰子数量和参赛人数,有计算机生成每个骰子的点数,再累加得到每一个选手的总点数。

思路

也是用模拟算法的应用场合。骰子嘛,6个点数,随机生成一个就好了。题目所说的筛子数量是指每个人所持有的筛子数。

使用

package com.company;

public class Main {

    public static void main(String[] args) {
    // write your code here
        Solution.diceGame();
    }
}

输出

请输入参赛人数:
7
请输入每人持有的筛子数量:
3
玩家1的点数为:
骰子1的点数是:4
骰子2的点数是:6
骰子3的点数是:5
骰子点数之和是15

玩家2的点数为:
骰子1的点数是:1
骰子2的点数是:1
骰子3的点数是:1
骰子点数之和是3

玩家3的点数为:
骰子1的点数是:6
骰子2的点数是:1
骰子3的点数是:2
骰子点数之和是9

玩家4的点数为:
骰子1的点数是:5
骰子2的点数是:3
骰子3的点数是:1
骰子点数之和是9

玩家5的点数为:
骰子1的点数是:4
骰子2的点数是:1
骰子3的点数是:2
骰子点数之和是7

玩家6的点数为:
骰子1的点数是:4
骰子2的点数是:3
骰子3的点数是:1
骰子点数之和是8

玩家7的点数为:
骰子1的点数是:2
骰子2的点数是:1
骰子3的点数是:1
骰子点数之和是4

还要继续吗?(Y/N)
n
程序结束

Process finished with exit code 0

实现

package com.company;

import java.util.Random;
import java.util.Scanner;

public class Solution {
    /**
     * 骰子游戏
     */
    static public void diceGame() {
        while (true) {
            System.out.println("请输入参赛人数:");
            Scanner personScanner = new Scanner(System.in);
            int personNumber = personScanner.nextInt();
            while (personNumber < 1) {
                System.out.println("参赛人数输入错误,请重新输入:");
                personNumber = personScanner.nextInt();
            }
            System.out.println("请输入每人持有的筛子数量:");
            int diceNumber = personScanner.nextInt();
            while (diceNumber < 1) {
                System.out.println("骰子数输入错误,请重新输入:");
                diceNumber = personScanner.nextInt();
            }
            for (int counter = 0;counter < personNumber;counter++) {
                System.out.println("玩家" + (counter + 1) + "的点数为:");
                int pointSum = 0;
                for (int counter0 = 0;counter0 < diceNumber;counter0++) {
                    Random random = new Random();
                    int dicePoint = random.nextInt(6) + 1;
                    pointSum += dicePoint;
                    System.out.println("骰子" + (counter0 + 1) + "的点数是:" + dicePoint);
                }
                System.out.println("骰子点数之和是" + pointSum);
                System.out.println();
            }
            System.out.println("还要继续吗?(Y/N)");
            Scanner charScanner = new Scanner(System.in);
            String inputChar = charScanner.next();
            if (!inputChar.toLowerCase().equals("y")) {
                System.out.println("程序结束");
                break;
            }
        }
    }
}

相关文章

  • 解释规则-解释问题

    board game 棋盘游戏dice game 掷骰子游戏tile game 智力拼图puzzle ...

  • 掷骰子游戏

    问题 根据用户输入的骰子数量和参赛人数,有计算机生成每个骰子的点数,再累加得到每一个选手的总点数。 思路 也是用模...

  • Python 使用matplotlib模块模拟掷骰子

    掷骰子 骰子类 折线图掷骰子 散点图掷骰子

  • 英语中“乱七八糟” 到底怎么说?

    “at sixes and sevens”译为“乱七八糟” 为什么可以这么翻译? 这是个典故,源于掷骰子游戏。 骰...

  • 股票买卖心理

    17世纪九十年代的金融世界到处弥漫着赌博的心理,有人说,股票买卖就是赌博,它和掷骰子游戏本质一样。但是掷骰子没有股...

  • Big.game是什么游戏?——GoDapp

    Big.game是基于EOS.IO区块链上的在线游戏娱乐平台,目前Big.game已上线掷骰子、红黑大战等游戏。 ...

  • 现金流游戏复盘:我们一步步走向目标,正如游戏中一样

    游戏名称:现金流游戏 参与人数:6人,银行家1名、玩家5名 游戏原理:5人按照順序轮流投掷骰子,根据点数进行移步数...

  • 蜕变游戏的体验与感悟

    游戏规则,这个游戏有一个面板,类似大富翁的游戏盘,上面有每个人自己的路径,凭借掷骰子的点数,来决定走到的格数,和面...

  • 数学思维训练——掷骰子游戏

    小学数学除了要加强常规计算训练以外,锻炼解题思维也是一项很重要的基础训练。上一期数学思维训练课程的题目是解开密码锁...

  • 之前读《富爸爸穷爸爸》这本书时,玩过大富翁游戏; 大富翁,又名地产大亨。参赛者分得游戏金钱,凭运气(掷骰子)及交易...

网友评论

      本文标题:掷骰子游戏

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