有一个长度为n(n<=100)的数列,该数列定义为从2开始的递增有序偶数,现在要求你按照顺序每m个数求出一个平均值,如果最后不足m个,则以实际数量求平均值。编程输出该平均值序 列。
输入数据有多组,每组占一行,包含两个正整数n和m,n和m的含义如上所述。
对于每组输入数据,输出一个平均值序列,每组输出占一行。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNext()) {
int n = sc.nextInt();//长度
int m = sc.nextInt();//区间
int[] arr = new int[n];
int a = 2;
for (int i = 0; i < n; i++) {
arr[i] = a;
a += 2;
}
int k = n / m;
int b = 0;
while (k-- != 0) {
int num = 0;
for (int i = b; i < b + m; i++) {
num += arr[i];
}
System.out.print(num / m + " ");
b += m;
}
if (n % m != 0) {
int nums = 0;
for (int i = b; i < n; i++) {
nums += arr[i];
}
System.out.println(nums / (n - b));
} else System.out.println();
}
}
}