c ++输出增加数字

时间:2014-04-20 03:09:29

标签: c++ arrays

您好我有一系列股价,但我只想在它们增加时输出它们。

例如,如果我有1,1,1,2,2,2,3,3,3,4,4,4,5,5,5等我只想打印1,2,3 ,4

我尝试过设置临时最大值和最小值,但仍然无法得到它。 现在我只有这个:

for(int h = 0; h < max; h++)
        {

            if(v3[h].getPrice() > 0)
            {
            ofile <<  v[h].getPrice() << ", ";
            }
        }

2 个答案:

答案 0 :(得分:1)

你想要的是这个

#include <iostream>
#include <algorithm>
#include <vector>

using namespace std;

int main()
{
    // Assign your vector
    int a[] = {1,1,1,2,2,3,3,3,4,4,5,5,5,1,3};
    vector<int> vec(a, a+15);

    // Sort before calling unique
    sort(vec.begin(), vec.end());

    // Impose only one of each
    vector<int>::iterator it;
    it = unique(vec.begin(), vec.end());
    vec.resize( distance(vec.begin(),it) );

    // Output your vector
    for( vector<int>::iterator i = vec.begin(); i!= vec.end(); ++i)
        cout << (*i) << endl;

    return 0;
}

Live example

sortunique工作所必需的。

答案 1 :(得分:-1)

#include <iostream>
using namespace std;

int main()
{
    int a[15] = {1,1,1,2,2,2,3,3,3,4,4,4,5,5,5};
    for (int i=0; i<15; i+=3)
    {
        cout << a[i] <<",";
    }
    return 0;
}

在循环中将计数器增加3次&#34; for(int h = 0; h&lt; max; h + = 3){}&#34;。