请问一下程序有时候 a1运行不出来 ,还有怎么修改避免重复? if语句有问题吗?
import java.util.*;
public class randomnumber{
public static void main(String[] args) {
Random r=new Random();
int a1=0,a2=0,a3=0,a4=0,a5=0,a6=0;
a1=r.nextInt(32)+1;
a2=r.nextInt(32)+1;
a3=r.nextInt(32)+1;
a4=r.nextInt(32)+1;
a5=r.nextInt(32)+1;
a6=r.nextInt(32)+1;
if((a1!= a2)&&(a1!= a3)&&(a1!= a4)&&(a1!= a5)&&(a1!= a6)&&(a2!= a3)&&(a2!= a4)&&(a2!= a5)&& (a2!= a6)&&(a3!= a4)&&(a3!= a5)&&(a3!=a6)&&(a4!= a5)&&(a4!= a6)&&(a5!= a6))
System.out.println("红球 1-33");
System.out.println("a1="+a1);
System.out.println("a2="+a2);
System.out.println("a3="+a3);
System.out.println("a4="+a4);
System.out.println("a5="+a5);
System.out.println("a6="+a6);
System.out.println("蓝球 1-16");
System.out.println(( r.nextInt(16)+1));
}
}
把if改成 while 后面加上{} shishi!
[解决办法]
有问题自己想办法解决啊,在 while{.... 最后加上个 break; } 运行一次就听了!
[解决办法]
或者 定义一个 sum 运行一次就加1 想运行几次都行 在里面加上 if(sum = xx) break;
break 不行就用 return ,break和return不懂的话 自己上网上查
[解决办法]
肯定是条件的问题 不全 或者其他的 好好再研究研究吧
[解决办法]
你生成不重复的随机数不就行了?
[解决办法]
int d = ran.nextInt(33) + 1;
while (d == a
[解决办法]
d == b
[解决办法]
d == c)
d = ran.nextInt(33) + 1;
int e = ran.nextInt(33) + 1;
while (e == a
[解决办法]
e == b
[解决办法]
e == c
[解决办法]
e == d)
e = ran.nextInt(33) + 1;
int f = ran.nextInt(33) + 1;
while (f == a
[解决办法]
f == b
[解决办法]
f == c
[解决办法]
f == d
[解决办法]
f == e)
f = ran.nextInt(33) + 1;
System.out.print("机选的红色球为:\t" + a + "\t" + b + "\t" + c + "\t" + d
+ "\t" + e + "\t" + f);
int g = ran.nextInt(16) + 1;
System.out.print("\t蓝球为:\t" + g);
}
}
如果想要 顺序输出红色球 ,可以写个冒泡之类的方法 排序一下
[解决办法]
}
[解决办法]
改动了楼主的代码顺序:
while(true) {
a1=r.nextInt(32)+1;
a2=r.nextInt(32)+1;
a3=r.nextInt(32)+1;
a4=r.nextInt(32)+1;
a5=r.nextInt(32)+1;
a6=r.nextInt(32)+1;
if((a1!= a2)&&(a1!= a3)&&(a1!= a4)&&(a1!= a5)&&(a1!= a6)&&
(a2!= a3)&&(a2!= a4)&&(a2!= a5)&&(a2!= a6)&&
(a3!= a4)&&(a3!= a5)&&(a3!=a6)&&
(a4!= a5)&&(a4!= a6)&&
(a5!= a6)){
System.out.println("红球 1-33");
System.out.println("a1="+a1);
System.out.println("a2="+a2);
System.out.println("a3="+a3);
System.out.println("a4="+a4);
System.out.println("a5="+a5);
System.out.println("a6="+a6);
break;
}else{
continue;
}
}
小白一枚,目测实现了楼主的要求