Wypożyczalnia książek - jak dodać poszczególną książkę do danego nazwiska?

0

Cześć! Mam do napisania program, który będzie czymś w rodzaju wypożyczalni książek. Działać on ma na strukturach, możliwe ma być dodawanie osób i książek, usuwanie oraz wyświetlanie.

 #include <iostream>
#define max_ksiazek 5
#define ROZ 50
#define ilosc_osob 5

using namespace std;


struct ksiazka
{
    char tytul[ROZ];
    char autor[ROZ];
    int rok;
};


struct osoby
{
    char nazwisko;
    ksiazka lista[max_ksiazek];
    int ilosc;

};

void dodawanie_osob()
{
     //Dodawanie osob

    osoby abonenci[ilosc_osob];
    cout << "Wprowadz dane.\n";
    for (short licz=0; licz < ilosc_osob; licz++)
    {
        cout << "Podaj nazwisko";
        cin >> abonenci[ licz ].nazwisko;
    }
}

void dodawanie_ksiazek()
{
    //Dodawanie ksiazek
    
    int ile_ksiazek;
    ksiazka pozycja[ile_ksiazek];
    


        cout << "Ile chcesz dodac ksiazek?" << endl;
        cin >> ile_ksiazek;
        for (int id=0; id < ile_ksiazek; id++)
        {
            cout << "Podaj tytul" << endl;
            cin >> pozycja[id].tytul;
            cout << "Podaj autor" << endl;
            cin >> pozycja[id].autor;
            cout << "Podaj rok wydania" << endl;
            cin >> pozycja[id].rok;
            cout << "Podaj nazwisko wypozyczajacego" << endl;
            cin >> 
        }



} 

Mam problem z tym jak dodać poszczególną książkę do danego nazwiska. Bardzo proszę o pomoc.

1
#include <iostream>
#include <string>
#include <map>
#include <algorithm>
#include <vector>
using namespace std;

struct Book{
	string title, content;
};

struct Person{
	string name, surname;
};

int main(){
	vector<Book> books;
	vector<Person> persons;
	
	using BookID = size_t;
	using PersonID = size_t;
	map<BookID, vector<PersonID>> bookLoans;
	
	books.push_back({"the FOO", "They guy walks into the BAR[...]"});
	persons.push_back({"Foodam", "Barbarsky"});
	
	auto thatBook = distance(begin(books), find_if(begin(books), end(books), [](auto book){
		return book.title == "the FOO";	
	}));
	auto thatPerson = distance(begin(persons), find_if(begin(persons), end(persons), [](auto person){
		return person.name == "Foodam" && person.surname == "Barbarsky";
	}));
	bookLoans[thatBook].push_back(thatPerson);
	return 0;
}

Po unikalność zapraszam po std::set, std::unordered_set lub std::unique

1 użytkowników online, w tym zalogowanych: 0, gości: 1