public static void getNumber(double times) {
double i=1;
int onetimes=0;
int twotimes=0;
int threetimes=0;
int fourtimes=0;
int fivetimes=0;
int sixtimes=0;
while(i<=times) {
int target=(int)Math.random()*10/1;
if(target>=1&&target<=6) {
switch(target) {
case(1):onetimes++;break;
case(2):twotimes++;break;
case(3):threetimes++;break;
case(4):fourtimes++;break;
case(5):fivetimes++;break;
case(6):sixtimes++;break;
default:;
}
i++;
}
}
double oneodds=onetimes/i;
double twoodds=twotimes/i;
double threeodds=threetimes/i;
double fourodds=fourtimes/i;
double fiveodds=fivetimes/i;
double sixodds=sixtimes/i;
System.out.println("出现1的概率"+oneodds);
System.out.println("出现2的概率"+twoodds);
System.out.println("出现3的概率"+threeodds);
System.out.println("出现4的概率"+fourodds);
System.out.println("出现5的概率"+fiveodds);
System.out.println("出现6的概率"+sixodds);
}
public static void main(String[] args) {
getNumber(100);
}
}
i++要放到if外面, int target=(int)(Math.random()*10);
原来target只会等于0,i++又在if内,所以死循环了
代码都给你了还在这问,真是服了