Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <string>
- #include <iomanip>
- using namespace std;
- ofstream fr;
- const int maks = 100; // maksimalus masyvo dydis
- const char KN[] = "knygos.txt"; // knygyno knygų failas
- const char RE[] = "rez.txt"; // galutinis failas
- class Knyga
- {
- string pavadinimas; // knygos pavadinimas
- int kiekis; // knygų skaičius knygyne
- int puslapiai; // knygos puslapių skaičius
- public:
- void Set(string pavadinimas, int kiekis, int puslapiai);
- string ImtiPav() { return pavadinimas; }
- int ImtiKiekį() { return kiekis; }
- int ImtiPuslapius() { return puslapiai; }
- };
- void Knyga::Set(string pavadinimas, int kiekis, int puslapiai)
- {
- Knyga::pavadinimas = pavadinimas;
- Knyga::kiekis = kiekis;
- Knyga::puslapiai = puslapiai;
- }
- void Nuskaitymas(Knyga K[], int & KnyguSk);
- void Išvedimas(ofstream & fr, Knyga K[], int KnyguSk);
- int main()
- {
- setlocale(LC_ALL, "Lithuanian");
- Knyga K[maks]; // klasės "knyga" objektas
- int KnyguSk; // knygų skaičius knygyne
- fr.open(RE);
- cout << "Knygos išvestos į naują failą.\n\n";
- Nuskaitymas(K, KnyguSk); // funkcija, nuskaitanti prad. failą
- Išvedimas(fr, K, KnyguSk); // funkcija, išvedimui į atskirą failą
- fr.close();
- return 0;
- }
- // funkcijos ------------------------------------
- // nuskaito informacija apie knygas iš failo
- void Nuskaitymas(Knyga K[], int & KnyguSk)
- {
- string pav; int kiek; int pusl; // laikini kint.
- ifstream fd(KN);
- fd >> KnyguSk;
- for(int i = 0; i < KnyguSk; i++){
- fd >> pav >> kiek >> pusl;
- K[i].Set(pav, kiek, pusl);
- }
- fd.close();
- }
- // išveda atrinktas knygas į failą
- void Išvedimas(ofstream & fr, Knyga K[], int KnyguSk)
- {
- fr << "Knygyne yra šios knygos:\n";
- fr << "------------------------------\n";
- fr << "Pavadinimas Kiekis Puslapiai \n";
- fr << "------------------------------\n";
- for(int i = 0; i < KnyguSk; i++){
- fr << setw(13) << left << K[i].ImtiPav()
- << setw(6) << right << K[i].ImtiKiekį()
- << setw(8) << K[i].ImtiPuslapius() << endl;
- }
- fr << "------------------------------\n";
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement