您的位置:首页 > 编程语言 > Java开发

Java 21选5 问题

2016-06-30 17:42 337 查看
package pkg;

/**
* Created by sanmao on 2016/6/30.
*/
public class CSWW {
public static void main(String[] args) {
//第一种方法
System.out.println("第一种方法-----------------");
for (int k = 0; k <5 ; k++) {
boolean l = false;
int[] x = new int[5];
for (int i = 0; i < 5; i++) {
l = false;
int a = (int) (Math.random() * 21) + 1;
for (int j = 0; j < 5; j++) {
if (a == x[j]) {
l = true;
}
}
if (l) {
i--;
} else {
x[i] = a;
System.out.print(a + "  ");
}
}
System.out.println();
}

//第二种方法
System.out.println("第二种方法---------------------");
for (int k = 0; k < 5; k++) {
int[] s=new int[5];
int a;
l:
for (int i = 0; i < 5; i++) {
a=(int)(Math.random()*21)+1;
for (int j = 0; j < 5; j++) {
if(a==s[j]) {
i--;
continue l;
}
}
s[i]=a;
}
for (int i = 0; i < 5; i++) {
System.out.print(s[i]+"\t");
}
System.out.println();
}

//第三种方法
System.out.println("第三种方法---------------");
for (int k = 0; k < 5; k++) {
int[] s=new int[5];
int a;
boolean f=true;
//            l:
for (int i = 0; i < 5; i++) {
f=true;
a=(int)(Math.random()*21)+1;
for (int j = 0; j < 5; j++) {
if(a==s[j]) {
i--;
f=false;
//                        continue l;
}
}
if (f)
s[i]=a;
}
for (int i = 0; i < 5; i++) {
System.out.print(s[i]+"\t");
}
System.out.println();
}
System.out.println("第四种方法-------------");
for (int k = 0; k <5 ; k++) {
int[] s = {0, 0, 0, 0, 0};
for (int i = 0; i < 5; i++) {
int x = 0;
int a = (int) (Math.random() * 21) + 1;
while (true) {
for (int j = 0; j < 5; j++) {
if (s[j] == a) {
x = 1;
break;
}
}
if (x == 0) {
s[i] = a;
break;
}
if (x == 1) {
a = (int) (Math.random() * 21) + 1;
x=0;
}
}
}
for (int z:s){
System.out.print(z+"\t");
}
System.out.println();
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java