题目描述
有一个长度为n(n<=100)的数列,该数列定义为从2开始的递增有序偶数(公差为2的等差数列),现在要求你按照顺序每m个数求出一个平均值,如果最后不足m个,则以实际数量求平均值。编程输出该平均值序列。
输入
输入数据有多组,每组占一行,包含两个正整数n和m,n和m的含义如上所述。
输出
对于每组输入数据,输出一个平均值序列,每组输出占一行
样例输入
3 2
4 2
样例输出
3 6
3 7
提示
样例说明 第一行表示 有3个数 2 4 6 要求每2个为一组求平均值 所以第一组为2 和4,平均值为3,第二组只有一个数6,平均值为6
解题代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
int n, m;
while(in.hasNext())
{
n = in.nextInt();
m = in.nextInt();
int j = 0, sum = 0, d = 0;
for (int i = 1; i <= n; i++)
{
j++;
d += 2;
sum += d;
if (j == m)
{
System.out.print(sum / m + " ");
sum = 0;
j = 0;
}
else
{
if (i == n)
System.out.print(sum / j);
}
}
System.out.println("");
}
}
}