dd
ddunknown
c_cpp
a year ago
4.0 kB
16
Indexable
#include <iostream>
#include <vector>
#include <string>
using namespace std;
struct ksiazka{
string tytul;
string autor;
string gatunek;
int cena;
string wydawnictwo;
int ilosc_stron;
}
class Lista{
vector<ksiazka> ksiazki;
public:
void Dodaj(string tytulKsiazki, string autorKsiazki, string gatunekKsiazki, int cenaKsiazki, string wydawnictwoKsiazki, int ilosc_stronKsiazki);
void Wyswietl();
void Usun(int pozycja);
void Szukaj();
void Menu();
}
Lista::Lista() {
cout << "Tworzenie obiektu klasy Lista" << endl;
}
void Lista::Dodaj(string tytulKsiazki, string autorKsiazki, string gatunekKsiazki, int cenaKsiazki, string wydawnictwoKsiazki, int ilosc_stronKsiazki) {
ksiazka tmp;
tmp.tytul = tytulKsiazki;
tmp.autor = autorKsiazki;
tmp.gatunek = gatunekKsiazki;
tmp.cena = cenaKsiazki;
tmp.wydawnictwo = wydawnictwoKsiazki;
tmp.ilosc_stron = ilosc_stronKsiazki;
ksiazki.push_back(tmp);
}
void Lista::Wypisz() {
if (ksiazki.empty()) {
cout << "Lista jest pusta." << endl;
} else {
for (int i = 0; i < ksiazki.size(); i++) {
cout << i + 1 << ". " << ksiazki[i].tytul << " - autor: " << ksiazki[i].autor << "- gatunek:" << ksiazki[i].gatunek << "- cena: " << ksiazki[i].cena << "- wydawnictwo:" << ksiazki[i].wydawnictwo << "- ilosc stron: " << ksiazki[i].ilosc_stron << endl;
}
}
}
void Lista::Usun(int pozycja) {
if (pozycja > 0 && pozycja <= ksiazki.size()) {
ksiazki.erase(ksiazki.begin() + pozycja - 1);
cout << "Usunięto ksiazke na pozycji " << pozycja << endl;
} else {
cout << "Błędna pozycja do usunięcia!" << endl;
}
}
void Lista::Szukaj(){
}
void Lista::Menu() {
int wybor;
do {
cout << "MENU:\n";
cout << "1. Dodaj ksiazke\n";
cout << "2. Wyswietl ksiazki\n";
cout << "3. Usuń ksiazke\n";
cout << "4. Szukaj ksiazki\n";
cout << "5. Zakończ\n";
cout << "Wybierz opcję: ";
cin >> wybor;
switch (wybor) {
case 1: {
// zmienne
string tytul;
string autor;
string gatunek;
int cena;
string wydawnictwo;
int ilosc_stron;
// tytul
cout << "Podaj tytul: ";
cin >> tytul;
// autor
cout << "Podaj autora: ";
cin >> autor;
// gatunek
cout << "Podaj gatunek: ";
cin >> gatunek;
// cena
cout << "Podaj cene: ";
cin >> cena;
// wydawnictwo
cout << "Podaj wydawnictwo ";
cin >> wydawnictwo;
// ilosc stron
cout << "Podaj ilosc stron: ";
cin >> ilosc_stron;
Dodaj(tytul,autor,gatunek,cena,wydawnictwo,ilosc_stron);
break;
}
case 2: {
Wypisz();
break;
}
case 3: {
int pozycja;
cout << "Podaj pozycję ksiazki do usunięcia: ";
cin >> pozycja;
Usun(pozycja);
break;
}
case 4: {
}
case 5: {
cout << "Zakończono program." << endl;
break;
}
default: {
cout << "Nieprawidłowa opcja, spróbuj ponownie." << endl;
break;
}
}
cout << endl;
} while (wybor != 4);
}
int main(){
Lista ksiazki;
ksiazki.Menu();
}Editor is loading...
Leave a Comment