自己编写的一个小程序:掷骰子10次,然后出现1-6的次数各为多少?
感觉有点小出入,但应该是没啥问题
因为用到Math.random()方法,但他会出现0,有没有哪个方法是不出现0的?谢谢解答下。
class A
{
public static void main(String [] args)
{
int i=0;
int result1=0;
int result2=0;
int result3=0;
int result4=0;
int result5=0;
int result6=0;
while (i<10)
{
int n=(int)(Math.random()*7);
System.out.println("n= "+n);
switch (n)
{
case 0: continue;
case 1: result1++; break;
case 2: result2++; break;
case 3: result3++; break;
case 4: result4++; break;
case 5: result5++; break;
case 6: result6++; break;
}
i++;
}
System.out.println("当骰子数为1时: "+result1);
System.out.println("当骰子数为2时: "+result2);
System.out.println("当骰子数为3时: "+result3);
System.out.println("当骰子数为4时: "+result4);
System.out.println("当骰子数为5时: "+result5);
System.out.println("当骰子数为6时: "+result6);
}
}
感觉有点小出入,但应该是没啥问题
因为用到Math.random()方法,但他会出现0,有没有哪个方法是不出现0的?谢谢解答下。
class A
{
public static void main(String [] args)
{
int i=0;
int result1=0;
int result2=0;
int result3=0;
int result4=0;
int result5=0;
int result6=0;
while (i<10)
{
int n=(int)(Math.random()*7);
System.out.println("n= "+n);
switch (n)
{
case 0: continue;
case 1: result1++; break;
case 2: result2++; break;
case 3: result3++; break;
case 4: result4++; break;
case 5: result5++; break;
case 6: result6++; break;
}
i++;
}
System.out.println("当骰子数为1时: "+result1);
System.out.println("当骰子数为2时: "+result2);
System.out.println("当骰子数为3时: "+result3);
System.out.println("当骰子数为4时: "+result4);
System.out.println("当骰子数为5时: "+result5);
System.out.println("当骰子数为6时: "+result6);
}
}
解决方案 »
- 无法执行的sql语句
- Netbeans 主类和javadoc
- 请介绍几本关于算法或数据结构的好书?
- 有图片处理经验的进,关于ImageIO
- 为什么放上去的控件不能拖动, 我想调整一下它的位置,却怎么也弄不动它。eclipse下用的VE插件
- 我考虑的系统架构问题,希望大家给予指点
- 各位大虾,来给我的project topic提提看法
- db-unified更名为dbking,希望大家继续支持
- 做项目中,遇到了问题,Exception in thread "main" java.lang.NoClassDefFoundError:
- jquery如何获取springmvc传来的数据集合
- 一个复制U盘文件的问题!急
- 弱弱的问一下jquery和sql注入
用个方法呀 public class void prt(String s){
System.out.println(s);
}
嘿嘿
import java.util.Random;public class RandomTest {
public static void main(String[] args){
Random ran = new Random();
int[] results = new int[6];
for(int i=0,n=0;i<10;++i){
n = ran.nextInt(5)+1;
results[n-1]++;
}
for(int i=1;i<=6;++i){
System.out.println("出现"+i+"的次数为:"+results[i-1]);
}
}
}
import java.util.Random;public class RandomTest {
public static void main(String[] args){
Random ran = new Random();
int[] results = new int[6];
for(int i=0;i<10;++i){
results[ran.nextInt(6)]++;
}
for(int i=1;i<=6;++i){
System.out.println("出现"+i+"的次数为:"+results[i-1]);
}
}
}
更正下
ran.nextInt(6)+1;这样也可以实现1-6的随机
写得很不错,谢谢
最后根据你的代码小做修改:import java.util.Random;public class RandomTest {
public static void main(String[] args){
Random ran = new Random();
int[] results = new int[6];
for(int i=0,n=0;i<10;++i){
n = ran.nextInt(5)+1;
results[n-1]++;
System.out.println("抛出的骰子号: "+n);
}
for(int i=1;i<=6;++i){
System.out.println("出现"+i+"的次数为:"+results[i-1]);
}
}
}
不然都不会得到6这个数;终于OK了