Pereiti prie turinio

Pagalba, gal blogai sukuriau kodus


Rekomenduojami pranešimai

Nuskaitymas is failo:

 

1 MIG29 Subaru Legacy Juoda, 2004 Benzinas

2 888888 BMW 745 Juoda, 2002 Dyzelinas/Dujos

3 007 MERCEDES BENZ S320 Pilka, 1999 Dujos

4 001 HARLEY DAVIDSON V-ROD Pilka, 2003 Dyzelinas

5 VAELGT AUDI A4 Geltona, 2005 Dyzelinas

6 TDX998 Audi A6 Zalia, 1999 Dyzelinas

7 AVILYS LEXUS GS 300 Zalia, 2005 Dyzelinas

8 LT0005 BMW X5 Melyna, 2004 Benzinas

9 LT0001 SUBARU Legacy Pilka, 2006 Benzinas

10 444444 VW NEW BEETLE Geltona, 2003 Dyzelinas/Dujos

 

Programa:

 

#include <iostream>

#include <fstream>

#include <string>

#include <vector>

#include <iterator>

#include <sstream>

 

using namespace std;

 

struct Automobilis {

int eilNr;

string automarke;

string pavadinimas;

string spalva;

string kuro;

int metai;

};

 

int main()

{

ifstream Duomenys("auto1.txt");

vector<Automobilis> Masinos;

if (Duomenys.fail())

{

printf("Nepavyko uzkrauti duomenu failo!");

return 0;

}

 

string linija;

while (getline(Duomenys, linija))

{

stringstream ss(linija);

vector<string> datawows;

copy(istream_iterator<string>(ss), istream_iterator<string>(), back_inserter(datawows));

 

linija.erase(0, datawows[0].length() + 1);

linija.erase(0, datawows[1].length() + 1);

 

string pavadinimas = linija;

int Pozicija = pavadinimas.find('(');

pavadinimas.erase(Pozicija, pavadinimas.length());

 

linija.erase(0, pavadinimas.length() + 1);

// printf("%s\n", linija.c_str()); // Geltona, 2003m)

 

string spalva = linija.substr(0, linija.find(","));

linija.erase(0, spalva.length() + 2);

 

string Metai = linija.substr(0, linija.find(","));

linija.erase(0, Metai.length() + 3);

// metai susidaro is 4 simboliu, todel, manau, kad galiu taip daryt

 

 

string kuro = linija.substr(0, linija.find("), "));

linija.erase(0, kuro.length() + 3);

 

 

 

 

 

Automobilis a;

a.eilNr = atoi(datawows[0].c_str());

a.automarke = datawows[1];

a.pavadinimas = pavadinimas;

a.spalva = spalva;

a.metai = atoi(Metai.c_str());

a.kuro = atoi(kuro.c_str());

Masinos.push_back(a);

}

 

vector<Automobilis>::iterator it, end;

 

for (it = Masinos.begin(), end = Masinos.end(); it != end; ++it)

{

printf("\n------------------\n Eil. numeris: %d\nMasina: %s\nMetai: %d\nReg. numeris: %s\nSpalva: %s \nKuro tipas: %d\n------------------\n\n", (*it).eilNr, (*it).pavadinimas.c_str(), (*it).metai, (*it).automarke.c_str(), (*it).spalva.c_str()), (*it).kuro.c_str();

}

 

system("pause");

}

 

 

kas galesite padeti man? Butu labai aciu :)

Nuoroda į pranešimą
Dalintis kituose puslapiuose
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
#include <iterator>
#include <sstream>

using namespace std;

struct Automobilis {
int eilNr;
string automarke;
string pavadinimas;
string spalva;
string kuro;
int metai;
};

int main()
{
ifstream Duomenys("auto1.txt");
vector<Automobilis> Masinos;
if (Duomenys.fail())
{
printf("Nepavyko uzkrauti duomenu failo!");
return 0;
}

string linija;
while (getline(Duomenys, linija))
{
stringstream ss(linija);
vector<string> datawows;
copy(istream_iterator<string>(ss), istream_iterator<string>(), back_inserter(datawows));

linija.erase(0, datawows[0].length() + 1);
linija.erase(0, datawows[1].length() + 1);

string pavadinimas = linija;
int Pozicija = pavadinimas.find('(');
pavadinimas.erase(Pozicija, pavadinimas.length());

linija.erase(0, pavadinimas.length() + 1);
// printf("%s\n", linija.c_str()); // Geltona, 2003m)

string spalva = linija.substr(0, linija.find(","));
linija.erase(0, spalva.length() + 2);

string Metai = linija.substr(0, linija.find(","));
linija.erase(0, Metai.length() + 3);
// metai susidaro is 4 simboliu, todel, manau, kad galiu taip daryt


string kuro = linija.substr(0, linija.find("), "));
linija.erase(0, kuro.length() + 3);





Automobilis a;
a.eilNr = atoi(datawows[0].c_str());
a.automarke = datawows[1];
a.pavadinimas = pavadinimas;
a.spalva = spalva;
a.metai = atoi(Metai.c_str());
a.kuro = atoi(kuro.c_str());
Masinos.push_back(a);
}

vector<Automobilis>::iterator it, end;

for (it = Masinos.begin(), end = Masinos.end(); it != end; ++it)
{
printf("\n------------------\n Eil. numeris: %d\nMasina: %s\nMetai: %d\nReg. numeris: %s\nSpalva: %s \nKuro tipas: %d\n------------------\n\n", (*it).eilNr, (*it).pavadinimas.c_str(), (*it).metai, (*it).automarke.c_str(), (*it).spalva.c_str()), (*it).kuro.c_str();
}

system("pause");

Redagavo LMysk
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ą...