如果重复相同的数字,如何比较流中的数字

问题描述 投票:-1回答:1

我正在尝试获得重复多次的相同数字,以将其写入不同的流函数void lygink

void lygink (int s,int e,int n,int a , int m,info K[],int &sk)
{
    a=0;
    for (int i=1; i<=m; i++)
    {
        if(K[i].j==K[i].l) ;
        else {
        e=K[i].j;
        s=K[i].j;
        if (e==s)  {
        cout <<  e<< endl;

        }
        }
    }
}

整个代码

    #include <iostream>
    #include <fstream>
    #include <iomanip>
    using namespace std;
    struct info
    {
        int j,l,sk;

    };
    void skaityk(int &n,int &m,int l, int j, info K[])
    {
        {
            ifstream fd ;
            fd.open ("U2duom.txt");
            fd >> n >> m;
            for (int i=1; i<=n; i++)
            {
                fd>>K[i].l ;
                cout<<fixed<<setprecision(2)<<" " <<K[i].l;
            }
            cout << " "<< endl;
            for (int i=1; i<=m; i++)
            {
                fd>>K[i].j ;
                cout<<fixed<<setprecision(2)<<" " <<K[i].j;
            }
            cout << " "<< endl;
            fd.close();
        }
    }
    void lygink (int s,int e,int n,int a , int m,info K[],int &sk)
{
    a=0;
    for (int i=1; i<=m; i++)
    {
        if(K[i].j==K[i].l) ;
        else {
        e=K[i].j;
        s=K[i].j;
        if (e==s)  {
        cout <<  e<< endl;

        }
        }
    }
}
    int main()
    {
        int n,e,m,a,l,j,s,sk;
        s=22;
        info K[500];
        skaityk(n, m,l, j, K);
        lygink(s,e,n,a,m,K,sk);
        int i;
        return 0;
    }

文件为

8 14
5 6 6 9 14 25 8 26
5 20 6 7 13 7 9 10 12 20 15 16 21 5

它应该只给我7和20,但给出的所有不一样,我不知道如何提取这些数字

c++ fstream
1个回答
0
投票

我在工作上会有所不同。作为第一步,我可能会按照以下一般顺序进行操作:

#include <iostream>
#include <set>
#include <sstream>

int main() { 

    std::istringstream input(R"(
        8 14
        5 6 6 9 14 25 8 26
        5 20 6 7 13 7 9 10 12 20 15 16 21 5 
    )");

    std::set<int> numbers;

    int n;

    while (input >> n)
         if (!numbers.insert(n).second)
            std::cout << n << "\n";
}

这产生的输出不仅仅是7和20,但是人工检查似乎可以确认它说的实际上是重复的。

© www.soinside.com 2019 - 2024. All rights reserved.