java摇两个色子代码 java 模拟两个色子

完成一个java project的构建,创建一个“骰子”类,命名为Dice?

Dice代码如下:

创新互联是专业的佛坪网站建设公司,佛坪接单;提供网站设计、做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行佛坪网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

import java.util.Random;

//(1)创建一个“骰子”类,命名为Dice。

public class Dice {

// 提示:初始化两个Dice对象。

//(2)“骰子”类有两个属性:①最大值为固定值6,②点数为1-6之间的整数。属性均设置为private。

private static int max = 6;

private int point;

// (3)“骰子”类有两个构造函数:①无形参的构造函数,将点数默认值设置为1;②有1个形参的构造函数,将形参赋值给点数。

public Dice() {

this.point = 1;

}

public Dice(int point) {

this.point = point;

}

// (4)自动生成骰子点数的get和set方法。

public static int getMax() {

return max;

}

public static void setMax(int max) {

Dice.max = max;

}

public int getPoint() {

return point;

}

public void setPoint(int point) {

this.point = point;

}

// (5)编写一个表示“掷骰子”的方法,将点数和函数返回值设置为1-6之间的随机整数。

// 提示:Math.random() //随机选取=0.0且1.0的double值

// double转int的方法:(int) double值 //转换后会舍弃小数点后面的值

public int throwDice() {

int result = 0;

while (true) {

int random = (int) (Math.random() * 10);

if (random 0 random = max) {

result = random;

break;

}

}

return result;

}

}

测试类方法如下:

import java.math.BigDecimal;

import java.util.ArrayList;

import java.util.List;

//(6)新建一个类,在其main()函数中调用Dice类,实现以下功能:

public class TestDice {

public static void main(String[] args) {

// ①掷两个骰子,显示每个骰子的点数,以及点数之和;

Dice dice = new Dice();

int one = dice.throwDice();

int two = dice.throwDice();

System.out.println("两次点数之和:" + (one + two));

// ②输入设置两个骰子的点数,显示两个骰子的点数之和。

Dice dice2 = new Dice(2);

Dice dice3 = new Dice(6);

System.out.println("所设置的点数之和:" + (dice2.getPoint() + dice3.getPoint()));

// ③连续10次掷两个骰子,显示每次掷骰子的结果,以及两个骰子10次点数的平均值。

Dice dice4 = new Dice();

ListInteger points1 = new ArrayList();

ListInteger points2 = new ArrayList();

for (int i = 0; i 10; i++) {

int first = dice4.throwDice();

System.out.println("第一个骰子掷:" + (i + 1) + "次点数是:" + first);

int second = dice4.throwDice();

System.out.println("第二个骰子掷:" + (i + 1) + "次点数是:" + second);

points1.add(first);

points2.add(second);

}

long sum1 = points1.stream().reduce(Integer::sum).orElse(0);

System.out.println("第一个骰子10次点数的平均值:" + new BigDecimal(Long.valueOf(sum1).toString()).divide(new BigDecimal(Integer.valueOf(points1.size()).toString())));

long sum2 = points2.stream().reduce(Integer::sum).orElse(0);

System.out.println("第二个骰子10次点数的平均值:" + new BigDecimal(Long.valueOf(sum2).toString()).divide(new BigDecimal(Integer.valueOf(points2.size()).toString())));

}

}

java程序编写双色球代码

截图:

选取红色球号码方法:

/**

 * 随机选取红色球

 * 

 * 获取1~33其中一个数

 * 

 * 0 = Math.random  1

 */

private int randomOneRedValue() {

int randomValue = (int) (Math.random() * 33 + 1);

return randomValue;

}

选取蓝色球号码方法:

/**

 * 随机选取蓝色球号码

 * 

 * 获取1~16的数值

 * 

 * @return

 */

private int randomOneBlueValue() {

int randomValue = (int) (Math.random() * 15 + 1);

return randomValue;

}

测试:

public class Test1 {

public static void main(String[] arg) {

Test1 localTest1 = new Test1();

// 双色球 :红色球号码 + 蓝色球号码

// 六个红色球和一个蓝色球号码

// 红色球号码从1~33中选择

// 蓝色球号码从1~16中选择

// 一等奖:七个号码相符(六个红色号码和一个蓝色球号码)(红色球号码顺序不限,下同)

// 二等奖:六个红色球号码相符;

// 三等奖:五个红色球号码,或者四个红色球号码和一个蓝色球号码相符;

// 四等奖:五个红色球号码,或者三个红色球号码和一个蓝色球号码相符;

// 五等奖:四个红色球号码,或者三个红色球号码和一个蓝色球号码相符;

// 六等奖:一个蓝色球号码相符(有误红色球号码相符均可);

// 例如:红色球号码 01 06 13 19 24 28 蓝色球号码 16

System.out.println("开始出奖");

// 定义双色球数组,大小为7

String[] values = new String[7];

for (int i = 0; i  7; i++) {

if (i == 6) {

int blueValue = localTest1.randomOneBlueValue();

if (blueValue  10) {

values[i] = "0" + blueValue;

} else {

values[i] = String.valueOf(blueValue);

}

} else {

int redValue = localTest1.randomOneRedValue();

if (redValue  10) {

values[i] = "0" + redValue;

} else {

values[i] = String.valueOf(redValue);

}

}

}

System.out.println();

System.out.println("出奖结束");

System.out.println();

System.out.print("双色球开奖号码:");

// 打印双色球号码

for (String value : values) {

System.out.print(" " + value);

}

}

}

写一个java程序,摇两个骰子,用random,直到两个值相等为止

不知道你说的是random类还是math.random,所以写了两个

1. Math.random

public class Test1 {

public static void main(String[] args) {

int a, b;

a = (int)(1+Math.random()*(6));

b = (int)(1+Math.random()*(6));

while (a != b) {

System.out.println("Not equal! a=" + a + ", b=" + b);

a = (int)(1+Math.random()*(6));

b = (int)(1+Math.random()*(6));

}

System.out.println("Equal! a=b=" + a);

}

}

2. random类

import java.util.Random;

public class Test2 {

public static void main(String[] args) {

int a, b;

Random ra = new Random();

a = ra.nextInt(6)+1;

b = ra.nextInt(6)+1;

while (a != b) {

System.out.println("Not equal! a=" + a + ", b=" + b);

a = ra.nextInt(6)+1;

b = ra.nextInt(6)+1;

}

System.out.println("Equal! a=b=" + a);

}

}


分享文章:java摇两个色子代码 java 模拟两个色子
本文链接:http://azwzsj.com/article/doijcdi.html