<commit_before>## Homework 2

Да се реализира клас Card, представящ картон на книга в библиотека. Класът да съдържа следните член данни:
  - заглавие на книгата (низ до 40 символа)
  - име на автора (низ до 30 символа)
  - брой налични екзепляри на книгата (неотрицателно цяло число)

Да се реализират конструктори за класа, първият от които приема два низа и число, а вторият приема само два низа и задава начална стойност на бройките нула. Да се реализира вътрешната функция

  void Card::setBookAmount(int)

Функцията трябва да променя броя на наличните книги в картона.

Да се реализира клас Library, представящ библиотека. Класът да съдържа масив от картони на книги с максимална дължина 50. Да се реализира конструктор за класа, който приема масив от книги като аргумент. Да се реализират следните вътрешни функции:

  void Library::borrowBook(char const*) - фунцкията приема като аргумент низ, представляващ заглавие на книга, и намалява бройката на съответната книга в картона с едно.

  void Library::returnBook(char const*) - функцията приема като аргумент низ, представляващ заглавие на книга, и увеличава бройката на съответната книга в картона с едно.

  void Library::addBook(Card const&) - функцията приема като аргумент картон за книга, която искаме да добавим в библиотеката.

  void Library::removeBook(char const*) - функцията приема като аргумент името на книгата, която искаме да премахнем. При изтриването ѝ да се запълни "дупката", която би могла да се е получила в масива.

 - споменатите по горе функции трябва да приемат и връщат точно това, което е написано в условието
 -  Броя на книгите не може да бъде отрицателен (< 0)
 - ще гледаме за правилна употреба на public и private
 - *ако прецените че е необходимо добавете още методи*
 - примопомнете си за setX и getX<commit_msg>Add clarifications to second assignment<commit_after>## Homework 2

Да се реализира клас Card, представящ картон на книга в библиотека. Класът да съдържа следните член данни:
  - заглавие на книгата (низ до 40 символа)
  - име на автора (низ до 30 символа)
  - брой налични екзепляри на книгата (неотрицателно цяло число)

Да се реализират конструктори за класа, първият от които приема два низа и число, а вторият приема само два низа и задава начална стойност на бройките нула. Да се реализира вътрешната функция

  void Card::setBookAmount(int)

Функцията трябва да променя броя на наличните книги в картона.

Да се реализира клас Library, представящ библиотека. Класът да съдържа масив от картони на книги с максимална дължина 50. Да се реализира конструктор за класа, който приема масив от картони като аргумент. Да се реализират следните вътрешни функции:

  void Library::borrowBook(char const*) - фунцкията приема като аргумент низ, представляващ заглавие на книга, и намалява бройката на съответната книга в картона с едно.

  void Library::returnBook(char const*) - функцията приема като аргумент низ, представляващ заглавие на книга, и увеличава бройката на съответната книга в картона с едно.

  void Library::addBook(Card const&) - функцията приема като аргумент картон за книга, която искаме да добавим в библиотеката.

  void Library::removeBook(char const*) - функцията приема като аргумент името на книгата, която искаме да премахнем. При изтриването ѝ да се запълни "дупката", която би могла да се е получила в масива.

 - Споменатите по горе функции трябва да приемат и връщат точно това, което е написано в условието
 - Броя на книгите не може да бъде отрицателен (< 0)
 - Ще гледаме за правилна употреба на public и private
 - *ако прецените че е необходимо добавете още методи*
 - Примопомнете си за setX и getX
 - Разделяйте декларацията и дефиницията на класа в h и cpp файлове, както сме правили на упражнение
 - Решенията да се предадат като архив с име name_fn.zip, който съдържа само h и cpp файлове
{'fraction_non_alphanumeric': 0.04304722149752152, 'fraction_numerical': 0.004174276024002087, 'mean_word_length': 4.469329529243938, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2612792', 'n_tokens_mistral': 1532, 'n_tokens_neox': 1876, 'n_words': 559}