diff options
1 files changed, 21 insertions, 18 deletions
| -rw-r--r-- | src/teaching/oop-2023/week7/index.du | 39 |
diff --git a/src/teaching/oop-2023/week7/index.du b/src/teaching/oop-2023/week7/index.du index e3b1044..f64265a 100644 --- a/src/teaching/oop-2023/week7/index.du +++ b/src/teaching/oop-2023/week7/index.du @@ -1,23 +1,26 @@ -# Задачи - ООП, Седмица 7, 04.04.2024 +'def title Задачи - ООП, Седмица 7, 04.04.2024 +'def desc Условия на задачите за упражнение + +# {title} \n -GitHub classroom: [url https://classroom.github.com/a/vvZENbkX classroom.github.com/a/vvZENbkX] +GitHub classroom: {url classroom.github.com/a/vvZENbkX;https://classroom.github.com/a/vvZENbkX} ## Преговорни ### Задача 1 - Голяма петица -.solution-link [url https://github.com/Syndamia/oop-2023-solutions/blob/main/week07/Exercise1.cpp Решение] +.solution-link {url Решение;https://github.com/Syndamia/oop-2023-solutions/blob/main/week07/Exercise1.cpp} Една съставка е композирана от низ (с максимална дължина от 511 знака) определящ името ѝ и грамаж (число с плаваща запетая). -Създайте клас [`Recipe`], към който могат да се прибавят и премахват произволен брой съставки. +Създайте клас {` Recipe}, към който могат да се прибавят и премахват произволен брой съставки. Имплементирайте голяма петица (голяма четворка плюс move семантики) за него. ### Задача 2 - Работа с файлове -.solution-link [url https://github.com/Syndamia/oop-2023-solutions/blob/main/week07/Exercise2.cpp Решение] +.solution-link {url Решение;https://github.com/Syndamia/oop-2023-solutions/blob/main/week07/Exercise2.cpp} От един ред на входа получавате името на текстови файл. Изкарайте на екрана средната една трета от файла, като буквите са в обратен ред. @@ -26,25 +29,25 @@ GitHub classroom: [url https://classroom.github.com/a/vvZENbkX classroom.github. ### Задача 3 -.solution-link [url https://github.com/Syndamia/oop-2023-solutions/blob/main/week07/Exercise3.cpp Решение] +.solution-link {url Решение;https://github.com/Syndamia/oop-2023-solutions/blob/main/week07/Exercise3.cpp} -Имплементирайте клас [`Thermometer`], който запазва максималната и минималната възможна температура за измерване, както и сегашната температура, всичките които са цели неотрицателни числа. +Имплементирайте клас {` Thermometer}, който запазва максималната и минималната възможна температура за измерване, както и сегашната температура, всичките които са цели неотрицателни числа. -Имплементирайте методи [`SaveText`] и [`LoadText`], които съответно записват и четат (тоест член-данните стават равни на тези от файла) данните си в/от [=текстови=] файл с подадено име. -Аналогично имплементирайте [`SaveBinary`] и [`LoadBinary`], които работят с [=двоични=] файлове. +Имплементирайте методи {` SaveText} и {` LoadText}, които съответно записват и четат (тоест член-данните стават равни на тези от файла) данните си в/от {b текстови} файл с подадено име. +Аналогично имплементирайте {` SaveBinary} и {` LoadBinary}, които работят с {b двоични} файлове. ### Задача 4 -.solution-link [url https://github.com/Syndamia/oop-2023-solutions/blob/main/week07/Exercise4.cpp Решение] +.solution-link {url Решение;https://github.com/Syndamia/oop-2023-solutions/blob/main/week07/Exercise4.cpp} -Имплементирайте клас [`Street`], който запазва скрито името на улицата като низ с произволна дължина и номер като цяло число. +Имплементирайте клас {` Street}, който запазва скрито името на улицата като низ с произволна дължина и номер като цяло число. Имплементирайте голяма петица. -Имплементирайте методите [`SaveText`], [`LoadText`], [`SaveBinary`], [`LoadBinary`]. +Имплементирайте методите {` SaveText}, {` LoadText}, {` SaveBinary}, {` LoadBinary}. ### Задача 5 -.solution-link [url https://github.com/Syndamia/oop-2023-solutions/blob/main/week07/Exercise5.cpp Решение] +.solution-link {url Решение;https://github.com/Syndamia/oop-2023-solutions/blob/main/week07/Exercise5.cpp} За един транспортен билет е нужно скрито да пазим началната и крайната дестинация като динамично-заделени низове с произволна дължина, неговата цена като число с плаваща запетая и идентификационен номер като цяло неотрицателно число. @@ -52,17 +55,17 @@ GitHub classroom: [url https://classroom.github.com/a/vvZENbkX classroom.github. ### Задача 6 -.solution-link [url https://github.com/Syndamia/oop-2023-solutions/blob/main/week07/Exercise6.cpp Решение] +.solution-link {url Решение;https://github.com/Syndamia/oop-2023-solutions/blob/main/week07/Exercise6.cpp} -Имплементирайте клас [`Matrix`], който запазва стойностите на матрица 2 на 2. +Имплементирайте клас {` Matrix}, който запазва стойностите на матрица 2 на 2. Предефинирайте операторите за инкрементиране, декрементиране, събиране, изваждане, умножение и вход/изход от/към поток. Имплементирайте четирите функции за записване и четене от файлове. ### Задача 7 -Имплементирайте клас [`Paragraph`], който съдържа текст с много редове в него. -Текстът се запазва като низ с произволна дължина, а редовете се разделят със знака [`'\\n'`]. +Имплементирайте клас {` Paragraph}, който съдържа текст с много редове в него. +Текстът се запазва като низ с произволна дължина, а редовете се разделят със знака {` '\\n'}. Имплементирайте голяма петица. Имплементирайте четирите функции за записване и четене от файлове. @@ -73,7 +76,7 @@ GitHub classroom: [url https://classroom.github.com/a/vvZENbkX classroom.github. ### Задача 8 -Имплементирайте клас [`MatrixNМ`], който запазва стойностите на матрица с N реда и M колони (подадени на конструктор). +Имплементирайте клас {` MatrixNМ}, който запазва стойностите на матрица с N реда и M колони (подадени на конструктор). Имплементирайте голяма петица. Имплементирайте четирите функции за записване и четене от файлове. |