把分数取出和,平均数,以及最大值,最小值出来
public class Fenshu { public static void main(String[] args) { //输出分数 double sum = 0; double arr[] = {60,80,95,90}; for( int i = 0 ;i < arr.length; i++) { if(i == 3) { System.out.print(arr[i]+"="); }else { System.out.print(arr[i]+"+"); } sum += arr[i]; } double pj = sum/arr.length; System.out.println( sum); //和 double min = arr[0]; //取数组里的一个数字 for ( int i = 0;i<arr.length; i++) { if(arr[i] <= min) { min = arr[i]; } } double max = 0.0; for (int i = 0; i<arr.length;i++) { if(arr[i] > max) { max = arr[i]; } } System.out.println("最大值"+max); System.out.println("最小值:"+min); System.out.println("平均值"+pj); } }
效果如下图:
500个数逢3退1,求最后剩下的那个数在之前数组里面的索引值
public static void main(String[] args) { boolean[] arr = new boolean[500]; for (int i = 0; i < arr.length; i++) { arr[i] = true; } //把存在的数定义为true; int arrLength = arr.length; // 记录数组的长度 int count = 0; // 记录1,2,3 int index = 0; // 记录当前数组数到第几个了,相当于数组的索引值 while (arrLength > 1) { //不知要进行几次,所以采取了while的循环 if (arr[index] == true) { // 没有数到3的数 count++; //开始数 if (count == 3) { arr[index] = false; //数到3的,把其剔除 count = 0; //从头开始数1,2,3 arrLength--; //长度减少 } } index++; if (index == arr.length) { //限制index不要无限制的增长, index = 0; //重新开始数 } } for (int i = 0; i < arr.length; i++) { if (arr[i]) { System.out.println(i); break; //输出那个剩下的数的索引值 } } }
思路:相当于500个数组成一个圆圈,数到3的那个数,剔除,然后重新组成圆圈,再重复进行