Jump to content

Задачи - ООП, Седмица 5, 18.03.2026

warn За всеки клас имплементирайте голяма петица! Това включва "move" семантики!

За решаване

Задача 1

Реализирайте клас NumSeries, който съхранява динамично-заделен масив от числа с плаваща запетая, техния размер и индекса на последния елемент.

Класа трябва да има публични методи, достъпни и за константни обекти:

Задача 2

Реализирайте клас String, който съхранява динамично-заделен низ.

Допълнително, реализирайте конструктор, приемащ const char* и публичи методи, достъпни за константни обекти (когато смислено):

Реализирайте клас Text, който съхранява динамично-заделена последователност от редове текст (String-ове). Реализирайте публични методи, достъпни за константни обекти (когато смислено):

Задача 3

Реализирайте клас Person, който съхранява трите имена, телефонен номер, имейл, година на раждане и ЕГН (personal number) на човек. Препоръчително е да използвате String клас, подобен на този от предходната задача (но имплементиран от Вас). Реализирайте конструктор, който приема тези данни.

Реализирайте клас TaxReport, който съхранява ЕГН, година, сума приходи и процент данък от приходите. Реализирайте конструктор, който приема тези данни.

Реализирайте клас TaxDatabase, който съхранява динамичо-заделени количества от Person и TaxReport обекти. Реализирайте публични методи, достъпни за константни обекти (когато смислено):

Задача 4

Реализирайте клас User, който съхранява ЕГН, имейл и парола на потребител. Реализирайте конструктор с всички тези параметри.

Реализирайте клас BankAccount, който съхранява AccountId и последователност от транзакции. Всяка транзакция съдържа промяна по баланса (положително число за вложена сума и отрицателна за изтеглена) и дата (ден, месец, година, час, минути, секунди). Реализирайте нужните помощни класове/структури. Реализирайте публични методи, достъпни за константни обекти (когато смислено):

Реализирайте структура UserBankAccount, която съхранява ЕГН и AccountId.

Реализирайте клас BankingSystem, който съхранява последователности от User-и, BankAccount-и и UserBankAccount-и. UserBankAccount-ите свързват User-ите и BankAccount-ите.

Реализирайте публични методи, достъпни за константни обекти (когато смислено):