1017: 序列求平均(2016年中南大学研究生复试机试题 )
1017: 序列求平均
时间限制: 1 Sec 内存限制: 128 MB提交: 180 解决: 82
[提交] [状态] [讨论版] [命题人:外部导入]
题目描述
有一个长度为 n(n<=100)的数列, 该数列定义为从2开始的递增有序偶数, 现在要求你按照顺序每 m个数求出一个平均值, 如果最后不足 m个, 则以实际数量求平均值。编程输出该平均值序列。
输入
输入数据有多组, 每组占一行, 包含两个整数 n和 m (1<=m,n<=100), n和 m的含义如上所述。
输出
对于每组输入数据, 输出一个平均值序列, 每组输出占一行。
样例输入
3 2
4 2
样例输出
3 6
3 7
来源/分类
1 #include<iostream>
2
3 using namespace std;
4
5 int main(){
6 int n, m;
7 while (cin >> n >> m){
8 int data = 0;
9 int time = 0;
10 int result = 0;
11 for (int i = 0; i<n; i++){
12 time++;
13 data = data + 2;
14 result += data;
15 //cout<<"i:"<<i<<" "<<time<<" "<<data<<" "<<result<<endl;
16 if (time%m == 0){//每m个输出一次平均数,并清空time的计数,和中间结果集
17 double rs = result / m;
18 cout << rs << " ";
19 result = 0;
20 time = 0;
21 }
22 }
23 if (time != 0){
24 double rs = result / time;
25 cout << rs << " ";
26 }
27 cout << endl;
28 }
29 return 0;
30 }