#Задача 1
Да се промени дадената имплементация на стек (stack.h и stack.cpp), за да може да работи с произволен тип данни.

#Задача 2
Да се състави програма, чрез която се прочитат от файл две дълги естествени числа с брой цифри от интервала [1..10001].
- Броят на цифрите в двете числа не е непременно равен.

Програмата да запише във файл изчислената сума на въведените дълги числа.

Пример: прочитаме 74094882455 и 71152761423221 записваме сумата: 71226856305676.

#Задача 3
Валидатор за коректен синтаксис на XML-подобен език. Четете от файл на име `validate`, който трябва да спазва синтаксис:
`<tag1>...<tag2>...</tag2>...</tag1>`
- Таг ще наричаме низ с формата `<име>`, като име е произволен низ с положителна дължина, а таг от формата
`</име>`–затварящ таг.
- Тагове, който са от формата `<име>str</име>` се наричат балансирани, когато `str` е низ от знаци с неотрицателна дължина,
който не съдържа други тагове и/или когато `str` съдържа балансирани тагове.

Задачата е да кажете дали файлът `validate` съществува, а ако да – дали съдържа балансирани тагове.
`validate` може да расте до 20 GiB и да съдържа до 160 милиона тага.

#Задача 4
Създайте абстрактен клас `AbstractStack`, който да позволява използването на различните видове стек, без значение от реализацията им.
Освен създаването на новия файл трябва да промените и вече съществуващите класове за да използват абстрактния клас.

Add week 5 tasks descriptions
Add week 5 tasks descriptions
