首页 > 代码库 > 1_6

1_6

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
///////////////////////////////////////////////////////////
// Copyright (c) 2013, ShangHai xxxx Inc.
//
// FileName: 1_6.cpp
//
// Description:
//
// Created: 2014年05月12日 星期一 22时17分47秒
// Revision: Revision: 1.0
// Compiler: g++
//
///////////////////////////////////////////////////////////
 
#include <iostream>
#include <vector>
 
using namespace std;
 
int main()
{
    vector<int> ivec;
    int ival;
    while(cin>>ival)
    {
        ivec.push_back(ival);
    }
 
    // 我们可以在数值被输入时就实时计算总和,
    // 这里的做法是遍历vector的元素, 一一累加
    int sum = 0;
    for(int ix = 0; ix < ivec.size(); ++ix)
    {
        sum += ivec[ix];
    }
 
    int average = sum/ivec.size();
 
    cout<< "Sum of "<<ivec.size()
        << " elements: "<<sum
        << ", Average: "<<average<<endl;
 
    return 0;
}
 
//demo 2
#if 0
#include <iostream>
 
using namespace std;
 
int main()
{
    const int array_size = 128;
    int ia[array_size];
    int ival, icnt = 0;
 
    while(cin>>ival && icnt < array_size)
    {
        ia[icnt++] = ival;
    }
     
    int sum = 0;
    for(int ix = 0; ix < icnt; ++ix)
    {
        sum += ia[ix];
    }
 
    int average = sum/icnt;
 
    cout<< "Sum of" << icnt
        << " elements: " << sum
        << ", Average: " << average << endl;
 
    return 0;
}
#endif