packageComprehensive_Exericse;publicclass test2 {//判断101-200之间有多少个素数。并输出所有素数。publicstaticvoidmain(String[] args){int count =0;for(int i =101;i <=200; i++){boolean flag =true;for(int j =2; j < i; j++){if(i % j ==0){
flag =false;break;}}if(flag){System.out.println("当前的数字"+ i +"是素数");
count++;}}System.out.println("共有素数"+ count +"个");}}
1.3 随机产生5位验证码
packageComprehensive_Exericse;importjava.util.Random;publicclass test3 {//定义方法实现随机产生一个5位的验证码//验证码长度为5,前四位是大写字母或者小写字母,最后一位是数字//在以后如果我们要在一堆没有什么规律的数据中随机抽取可以先把这些数据放到数组当中,再随机抽取一个索引publicstaticvoidmain(String[] args){char[] chars =newchar[52];for(int i =0; i < chars.length; i++){if(i <=25){
chars[i]=(char)(97+ i);//ASCLL码强转成char,小写字母}else{
chars[i]=(char)(65+ i -26);//大写字母}}Random r =newRandom();String result ="";for(int i =0; i <4; i++){int index = r.nextInt(chars.length);
result = result + chars[index];}int num = r.nextInt(10);
result = result + num;System.out.println(result);}}
1.4 评委打分
packageComprehensive_Exericse;importjava.util.Scanner;publicclass test5 {//在唱歌比赛中,有6名评委给选手打分,分数范围是[O-100]之间的整数。// 选手的最后得分为:去掉最高分、最低分后的4个评委的平均分,请完成上述过程并计算出选手的得分。publicstaticvoidmain(String[] args){int[] scoreList =getScore();for(int i =0; i < scoreList.length; i++){System.out.print(scoreList[i]+" ");}System.out.println(" ");System.out.println("去掉最高分:"+getMax(scoreList));System.out.println("去掉最低分:"+getMin(scoreList));System.out.println("最终平均得分:"+getAvarage(scoreList,getMax(scoreList),getMin(scoreList)));}publicstaticint[]getScore(){int[] scoreList =newint[6];Scanner sc =newScanner(System.in);for(int i =0; i < scoreList.length;){System.out.println("请输入第"+(i+1)+"位评委打分:");int score = sc.nextInt();if(score >100|score <0){System.out.println("分数无效,请重新输入。");}else{
scoreList[i]= score;
i++;}}return scoreList;}publicstaticintgetMax(int[] arr){int max = arr[0];for(int i =0; i < arr.length; i++){if(arr[i]> max){
max = arr[i];}}return max;}publicstaticintgetMin(int[] arr){int min = arr[0];for(int i =0; i < arr.length; i++){if(arr[i]< min){
min = arr[i];}}return min;}publicstaticfloatgetAvarage(int[] arr,int max,int min){int totalScore =0;for(int i =0; i < arr.length; i++){
totalScore += arr[i];}float avarage =(totalScore - max - min)/4;return avarage;}}
1.5 数字加密和解密
1.5.1 数字加密
packageComprehensive_Exericse;publicclass test6 {//某系统的数字密码(大于0),比如1983,采用加密方式进行传输。//先得到每位数,然后每位数都加上5,再对10求余,最后将所有数字反转,得到一串新数。publicstaticvoidmain(String[] args){int[] arr ={1,9,8,3};for(int i =0; i < arr.length; i++){
arr[i]= arr[i]+5;
arr[i]= arr[i]%10;}for(int i =0, j = arr.length -1; i < j; i++, j--){int temp = arr[i];
arr[i]= arr[j];
arr[j]= temp;}int number =0;for(int i =0; i < arr.length; i++){
number = number *10+ arr[i];}}}
1.5.2 数字解密
packageComprehensive_Exericse;publicclass test8 {//8346进行解密publicstaticvoidmain(String[] args){int[] arr ={8,3,4,6};for(int i =0,j = arr.length-1; i < j; i++,j--){int temp = arr[i];
arr[i]= arr[j];
arr[j]= temp;}for(int i =0; i < arr.length; i++){if(arr[i]>=0&& arr[i]<=4){
arr[i]= arr[i]+10;}}for(int i =0; i < arr.length; i++){
arr[i]= arr[i]-5;}int number =0;for(int i =0; i < arr.length; i++){
number = number *10+ arr[i];}System.out.println(number);}}
1.6 抽奖系统
packageComprehensive_Exericse;importjava.util.Random;publicclass test10choujiang {//抽奖优化思路:直接把奖池打乱,然后挨个输出就行publicstaticvoidmain(String[] args){int[] arr ={2,588,888,1000,10000};Random r =newRandom();for(int i =0; i < arr.length; i++){int randomIndex = r.nextInt(arr.length);int temp = arr[i];
arr[i]= arr[randomIndex];
arr[randomIndex]= temp;}for(int i =0; i < arr.length; i++){System.out.println(arr[i]+"元的奖金被抽出");}}}