大一Java程序设计问题

编写程序模拟掷骰子游戏:同时投掷两个骰子5000次。每个骰子上共有从1到6的6个数,计算每次投掷结果两个骰子的数值之和,并统计和输出每种可能的结果在模拟过程中出现的总次数... 编写程序模拟掷骰子游戏:同时投掷两个骰子5000次。每个骰子上共有从1到6的6个数,计算每次投掷结果两个骰子的数值之和,并统计和输出每种可能的结果在模拟过程中出现的总次数。
解题思路:
1、每次掷两个骰子的最小和是2,最大是12,一共有11个可能的和
2、这11个可能的和出现的次数可以放在一个整型数组里
3、用随机数每次生成2个1~6之间的随机数表示掷两个骰子
(要求用到util包和集合框架)
展开
 我来答
匿名用户
2017-05-25
展开全部
//  **** 求采纳 ****
//1、每次掷两个骰子的最小和是2,最大是12,一共有11个可能的和
int[] base = {2,3,4,5,6,7,8,9,10,11,12};
//2、这11个可能的和出现的次数可以放在一个整型数组里
int[] times = new int[base.length];
//3、用随机数每次生成2个1~6之间的随机数表示掷两个骰子
for (int i = 0; i < 50; i++) {
int num_one = (int)(Math.random() * 10 % 6) + 1;
int num_two = (int)(Math.random() * 10 % 6) + 1;
int sum = num_one + num_two;
//获得和 在结果数组中的下标
int index = sum - 2;
//对应次数数组值加1
times[index] = times[index] + 1; 
}
for(int i=0;i< times.length; i++){
System.out.println(base[i] + " 出现 " + times[i] + "次");
}
桃地再不斩乐园
2017-05-25 · TA获得超过148个赞
知道答主
回答量:121
采纳率:0%
帮助的人:23.3万
展开全部

拿走


public class Tou {

public int ran() {
int d = (int) (10 * Math.random());
if (d > 6 || d < 1) {
return ran();
}
return d;
}

public void result() {

int[] array = new int[13];// 存放结果的数组
int x = 0;
while (x < 5000) {
int a = ran();// 第一个骰子的数
int b = ran();// 第二个骰子的数
int c = a + b;
array[c]++;
x++;
}
for (int i : array) {
System.out.println(i);
}

}

public static void main(String[] args) {
Tou t = new Tou();

t.result();

}
}
追问
题目要求是同时投掷2个骰子啊
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
优质内容提供者andy
2017-05-25 · TA获得超过1561个赞
知道大有可为答主
回答量:2551
采纳率:72%
帮助的人:743万
展开全部
有意愿可以私信我
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式