Pereiti prie turinio

C++ - kaip išrašyti pasikartojančius masyvo elementus


Rekomenduojami pranešimai

Labas vakaras, būtų puiku jei pagelbėtumėt su gan nesunkiu C++ uždaviniu.

 

Reikia iš duomenų failo išrinkti pasikartojančius elementus ir išrašyti juos didėjimo tvarka.

 

Duomenys:

17
5 12 6 7 13 7 9 10 12 17 5 16 2 2 5 4 6

 

Rezultatas:

2 5 5 6 7 12

 

Mano kodas, visiškai netiksliai parašytas, kadangi nemoku net išmesti duomenų bet kokia tvarka, bet nežinau, ką keisti:

 

#include <fcntl.h>
#include <io.h>
#include <cstdlib>
#include <iostream>
#include <iomanip>
#include <fstream>
#include <cmath>
#include <string>
using namespace std;
void SkaitytiSkaiciuotiSpausdinti(int & n, int A[], int B[]);
int main(){
int n;
int A[100];
int K[100];
SkaitytiSkaiciuotiSpausdinti(n,A,K);

return 0;
}

void SkaitytiSkaiciuotiSpausdinti(int & n, int A[], int B[]){
ifstream fd("Duomenys2.txt");
ofstream fr("Rezultatai2.txt");
int K[100];
int a=0;
fd>>n;
for(int i=0;i<n;i++){
fd>>A[i];
for(int j=i+1;j<n;j++){
if(A[i]==A[j]){
       fd>>K[i];a=a+1;fr<<K[i]<<"  ";}
}
}
fd.close();
fr.close();
}

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Gal prisitaikysi

void apskritiesieskojimas(pradiniai Duomenys[], galutinis rezultatas[], int n, bool yra, int &aps){

/*rezultatas[0].apskr=Duomenys[0].apskr;
   rezultatas[0].gyventojusk=0;
   rezultatas[0].mingyventojai = 600000; */

   for(int i=1; i <= n; i++){
       yra=false;
       for(int j=i+1; j <= n; j++){
           if(Duomenys[i].apskr==Duomenys[j].apskr){
              yra=true;
           }
       }
               if(!yra){
               rezultatas[aps].apskr= Duomenys[i].apskr;
               rezultatas[aps].gyventojusk=0;
               rezultatas[aps].mingyventojai = 600000;
               aps++;
           }
   }
}

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

×
×
  • Pasirinkite naujai kuriamo turinio tipą...