java初学者编程题_java新手编程题目

展开全部

思路如下32313133353236313431303231363533e58685e5aeb931333365643537:随即4个数字(1~6) 用来模拟4个色子

数字全部存入数组ary,.然后升序排列.

如果满足两两相等,那么已经排序好的数字,就是ary[0]=ary[1]; ary[2]=ary[3];

然后判断ary[0]+ary[2]==6 .如果等于6 那么满足要求,不等于6 ,那么继续下次循环

参考代码import java.util.Arrays;

public class RandomDemo {

public static void main(String[] args) {

int loop = 5;// 重复5次试验

for (int k = 0; k 

int times = 0;// 循环的次数

int[] ary;// 数组,存储4个随机数

while (true) {

times++;// 次数+1

ary = new int[4];

for (int i = 0; i 

ary[i] = getNum();// 添加随机数

}

Arrays.sort(ary);// 用数组工具类进行排序

// 因为有两两相等的情况, 那么就是 ary[0]=ary[1] ary[2]=ary[3] 能减少很多的if else判断

// 如果两两相等.且两值和等于6 ,那么跳出循环

if (ary[0] == ary[1] && ary[2] == ary[3] && ary[0] + ary[2] == 6) {

break;//跳出

}

}

System.out.println("两个数字分别是" + ary[0] + "和" + ary[2] + "\t" + "循环了" + times + "次");

}

}

//该方法用于返回一个 [1,6]之间的数字

private static int getNum() {

return (int) (Math.random() * 6) + 1;// 1~6之间的随即数

}

}

测试结果两个数字分别是1和5循环了22次

两个数字分别是1和5循环了12次

两个数字分别是3和3循环了105次

两个数字分别是1和5循环了128次

两个数字分别是2和4循环了96次

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值