[Java] 纯文本查看 复制代码 package test01;
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
int[] arr = new int[50];//存放已经生成过的并且是不重复的随机数
int[] arrFinal = new int[50];//存放能被3整除但是不能被8整除的数
int count = 0;//记录符合能被3整除但是不能被8整除的数的个数
int index = 0;//用于记录已经成功赋值到arr数组中的随机数的个数
int num;
boolean flag;
//生成随机数,并将随机数与arr数组中已经存在的元素比较是否相等 如果不相等则赋值给arr下一个元素
for(;index<50;){
flag = false;
num = (int)(Math.random()*500);
for(int j=0;j<index;j++){
if(num == arr[j]){
flag = true;
break;
}
}
if(!flag){
arr[index] = num;
if(num%3==0&&num%8!=0){//判断是否符合能被3整除但是不能被8整除的数
arrFinal[count] = num;
count++;
}
index++;
}
}
arrFinal = Arrays.copyOf(arrFinal, count);
int tem;
//冒泡排序
for(int i=0;i<arrFinal.length-1;i++){
for(int j=0;j<arrFinal.length-1-i;j++){
if(arrFinal[j]>arrFinal[j+1]){
tem = arrFinal[j];
arrFinal[j] = arrFinal[j+1];
arrFinal[j+1] = tem;
}
}
}
//循环输出
for(int i=0;i<arrFinal.length;i++){
System.out.print(arrFinal[i]+" ");
}
}
}
|