Summary Files Commits Branches @commit @diff @stats
path: root / src / teaching / oop-2025 / week07 / index.du
diff options
context:
space:
mode:
1 files changed, 13 insertions, 13 deletions
-rw-r--r--src/teaching/oop-2025/week07/index.du26
diff --git a/src/teaching/oop-2025/week07/index.du b/src/teaching/oop-2025/week07/index.du
index 86fc97b..3314b0c 100644
--- a/src/teaching/oop-2025/week07/index.du
+++ b/src/teaching/oop-2025/week07/index.du
@@ -1,17 +1,17 @@
-# Задачи - ООП, Седмица 7, 01.04.2026
+'def title Задачи - ООП, Седмица 7, 01.04.2026
+'def desc Условията на задачите за упражнение.
-'define expected-reading 4 min
-'define created 01 April 2026
-'define edited 01 April 2026
-[$pagenav]
+# {title}
-.warn За всеки клас имплементирайте [=голяма петица!=]
+{pagenav 4 min;01 April 2026;01 April 2026}
+
+.warn За всеки клас имплементирайте {b голяма петица!}
## За решаване
### Задача 1
-.solution-link [url https://github.com/Syndamia/oop-2025-solutions/tree/main/Week07/Exercise01 Решение]
+.solution-link {url Решение;https://github.com/Syndamia/oop-2025-solutions/tree/main/Week07/Exercise01}
Реализирайте система за менажиране на онлайн книги.
@@ -21,9 +21,9 @@
- библиотекари, които могат да добавят и махат книги, както и да променят цената им
- банкови служители, които одобряват или отказват транзакции
-[=Книгите=] имат заглавие, автор, година на издаване, (многоредово) текстово съдържание и цена.
+{b Книгите} имат заглавие, автор, година на издаване, (многоредово) текстово съдържание и цена.
-[=Потребителите=] имат имейл и парола с които влизат, своя библиотека от книги които могат да достъпват и номер на банкова карта.
+{b Потребителите} имат имейл и парола с които влизат, своя библиотека от книги които могат да достъпват и номер на банкова карта.
Всеки потребител има възможността да смени своята парола или номер на банкова карта.
Номер "0" на банкова карта обозначава, че няма свързана банкова карта (и потребителя може да купува само безплатни книги).
@@ -35,9 +35,9 @@
Потребителите могат да виждат всички свои транзакции и техния статус: чакащ одобрение, одобрен, отхвърлен.
Допълнително, могат да изкарат справка за купени книги, която е текстов файл, съдържащ всяка (одобрена) транзакция, заглавието и цената на закупената книга.
-[=Библиотекарите=] имат библиотекарски номер и парола с които влизат.
+{b Библиотекарите} имат библиотекарски номер и парола с които влизат.
Те могат да добавят нови книги, където на един ред се въвежда заглавието на книгата, на втори се въвежда автора, на трети година на издаване, на четвърти цената и след това се въвежда съдържанието на книгата.
-Това съдържание свършва, когато се въведе знака точка [`.`] на самостоятелен ред.
+Това съдържание свършва, когато се въведе знака точка {` .} на самостоятелен ред.
За вече съществуващи книги, могат да се редактират заглавието, автора, и цената.
Да се има впредвид, че тези всички тези промени, освен върху цената, се разпространяват на потребителите.
@@ -50,8 +50,8 @@
Това обозначава дали потребител може да си я купи или не (и дали излиза в списъка с налични книги за купуване; но не променя нищо ако е вече закупена).
По подразбиране всяка нова книга е налична и трябва експлитно да бъде "свалена".
-[=Банковите служители=] влизат със служителски номер, динамична парола и статична парола.
-Статичната парола е текстова, докато динамичната парола е положително число, което трябва да изпълнява тъждеството [`(служителски_номер * динамича_парола) mod 8581 = 0`].
+{b Банковите служители} влизат със служителски номер, динамична парола и статична парола.
+Статичната парола е текстова, докато динамичната парола е положително число, което трябва да изпълнява тъждеството {` (служителски_номер * динамича_парола) mod 8581 = 0}.
Допълнително, нито служителския номер, нито статичната парола, могат да бъдат числата 0, 1 или 8581.
Примери за такива двойки числа са: 27 17162, 572 51486, 901 42905.