Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * II grupė
- S.Šeštokaitė ir A.Molotkevičiūtė.
- 15. Faile „duomenys.dat“ yra informacija apie visus
- tinklapio „ParduotuAuto.lt“ automobilius (markė,
- modelis, gaminimo metai, variklio tūris, spalva, kaina).
- Programa turi sugrupuoti duomenis pagal automobilio metus:
- < 3 metų automobilaii 3>x<7 metų automobiliai, 7<x<12 metų
- automobiliai, >12 metų automobiliai. Kiekveinoje grupėje
- autombilai turi būti sugrupuoti pagal markę, modelį, variklio
- tūrį ir kainą. Rezultatai išvedami ekrane.
- *
- */
- #include <string.h>
- #include <iostream>
- #include <fstream>
- using namespace std;
- void SkaitytiFaila(int &kiekis, string marke[], string modelis[], int metai[], double turis[], double kaina[]);
- string FormuotiGrupe(string pavadinimas, string marke[], string modelis[],
- int metai[], double turis[], double kaina[], int kiekis, int mininali,
- int maksimali);
- const int CMax = 300;
- const int CDabarMetai = 2019;
- const string CfailoVieta = "../duomenys.dat";
- int main()
- {
- int kiekis;
- string marke[CMax];
- string modelis[CMax];
- int metai[CMax];
- double turis[CMax];
- double kaina[CMax];
- SkaitytiFaila(kiekis, marke, modelis, metai, turis, kaina);
- cout<<FormuotiGrupe("x<3", marke, modelis, metai, turis, kaina, kiekis, 0, 2); //x<3
- cout<<FormuotiGrupe("x<7", marke, modelis, metai, turis, kaina, kiekis, 0, 6); //x<7
- cout<<FormuotiGrupe("8<x<11", marke, modelis, metai, turis, kaina, kiekis, 8, 11); //8<x<11
- cout<<FormuotiGrupe("12<x", marke, modelis, metai, turis, kaina, kiekis, 13, 99999); //12<x
- return 0;
- }
- string FormuotiGrupe(string pavadinimas, string marke[], string modelis[],
- int metai[], double turis[], double kaina[], int kiekis, int mininali,
- int maksimali)
- {
- string galutinis="";
- string markes = "Markes: ";
- string modeliai = "Modeliai: ";
- string turiai = "Turiai: ";
- string kainos = "Kainos: ";
- galutinis += pavadinimas + "\n";
- galutinis += "----------------------------------\n";
- for(int x=0; x<kiekis; x++){
- if(CDabarMetai-metai[x] >= mininali && CDabarMetai-metai[x]<= maksimali){
- markes += marke[x] + " ";
- modeliai += modelis[x] + " ";
- turiai += to_string(turis[x]) + " ";
- kainos += to_string(kaina[x]) + " ";
- }
- }
- galutinis += markes + "\n";
- galutinis += modeliai + "\n";
- galutinis += turiai + "\n";
- galutinis += kainos + "\n\n";
- return galutinis;
- }
- void SkaitytiFaila(int &kiekis, string marke[], string modelis[], int metai[], double turis[], double kaina[])
- {
- string line;
- ifstream myfile;
- myfile.open(CfailoVieta);
- bool failasnebaigtas = true;
- kiekis = 0;
- while (failasnebaigtas) {
- myfile >> line;
- if( myfile.eof()) break;
- marke[kiekis] = line;
- myfile >> modelis[kiekis];
- myfile >> metai[kiekis];
- myfile >> turis[kiekis];
- myfile >> line;
- myfile >> kaina[kiekis];
- kiekis++;
- }
- myfile.close();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement