Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <iomanip>
- #include <string>
- #include <stdio.h>
- #include <stdlib.h>
- using namespace std;
- struct automobilis
- {
- string pavadinimas;
- int rida;
- int remontas;
- };
- void skaitymas (automobilis Visi[], automobilis Perkami[], int &vkiekis, int &pkiekis, int &rida, int &remontas);
- void salinti (automobilis Visi[], int &vkiekis, int &rida, int &remontas);
- void pastumtikairen (automobilis Visi[], int &vkiekis, int indeksas);
- void papildyti (automobilis Visi[], automobilis Perkami[], int &vkiekis, int &pkiekis);
- void ribiniai (automobilis Visi[], automobilis Ribiniai[], int &vkiekis, int &rkiekis, int rida);
- void isvedimas(automobilis Visi[], automobilis Ribiniai[], int &vkiekis, int &rkiekis);
- int main ()
- {
- automobilis Visi[100], Perkami[100], Ribiniai[100];
- int vkiekis = 0, pkiekis = 0, rkiekis = 0, rida = 0, remontas = 0;
- skaitymas(Visi, Perkami, vkiekis, pkiekis, rida, remontas);
- salinti(Visi, vkiekis, rida, remontas);
- papildyti (Visi, Perkami, vkiekis, pkiekis);
- ribiniai (Visi, Ribiniai, vkiekis, rkiekis, rida);
- isvedimas(Visi, Ribiniai, vkiekis, rkiekis);
- return 0;
- }
- void skaitymas (automobilis Visi[], automobilis Perkami[], int &vkiekis, int &pkiekis, int &rida, int &remontas)
- {
- ifstream fd ("Duomenys.txt");
- fd >> rida >> remontas;
- fd >> vkiekis;
- for (int i = 0; i < vkiekis; i++)
- {
- fd >> Visi[i].pavadinimas;
- fd.ignore();
- fd >> Visi[i].rida;
- fd.ignore();
- fd >> Visi[i].remontas;
- fd.ignore();
- }
- fd >> pkiekis;
- for (int i = 0; i < pkiekis; i++)
- {
- fd >> Perkami[i].pavadinimas;
- fd.ignore();
- fd >> Perkami[i].rida;
- fd.ignore();
- fd >> Perkami[i].remontas;
- fd.ignore();
- }
- fd.close();
- }
- void papildyti (automobilis Visi[], automobilis Perkami[], int &vkiekis, int &pkiekis)
- {
- for (int i = 0; i < pkiekis; i++)
- {
- Visi[vkiekis++] = Perkami[i];
- }
- }
- void salinti (automobilis Visi[], int &vkiekis, int &rida, int &remontas)
- {
- int i = 0;
- while (i < vkiekis)
- {
- if (Visi[i].remontas > remontas || Visi[i].rida > rida)
- {
- pastumtikairen(Visi, vkiekis, i);
- i--;
- }
- i++;
- }
- }
- void pastumtikairen(automobilis Visi[], int &vkiekis, int indeksas)
- {
- for (int i = indeksas; i < vkiekis; i++)
- {
- Visi[i] = Visi[i+1];
- }
- vkiekis--;
- }
- void isvedimas(automobilis Visi[], automobilis Ribiniai[], int &vkiekis, int &rkiekis)
- {
- ofstream fr ("Rezultatai.txt");
- fr << "Naujas automobilių sąrašas: " << endl;
- for (int i = 0; i < vkiekis; i++) {
- fr << fixed << setprecision(2) << Visi[i].pavadinimas << " " << Visi[i].rida << " " << Visi[i].remontas << endl;
- }
- fr << endl << "Ribinės ridos automobiliai: " << endl;
- for (int i = 0; i < rkiekis; i++) {
- fr << fixed << setprecision(2) << Ribiniai[i].pavadinimas << " " << Ribiniai[i].rida << " " << Ribiniai[i].remontas << endl;
- }
- fr.close();
- }
Advertisement
Add Comment
Please, Sign In to add comment