Summary Files Commits Branches @commit @diff @stats
path: root / src
diff options
context:
space:
mode:
Commite20e3a7b4961aec18be4e00db6a298c68ed0fc81 (patch)
Author
 Syndamia <kamen@syndamia.com>
2024-03-28 09:47:48 +0200
Committer
 Syndamia <kamen@syndamia.com>
2024-03-28 09:47:48 +0200
Filescc083edd7116741ee1a548c34549b0f1d37e4905 /src
syndamia.com-e20e3a7b4961aec18be4e00db6a298c68ed0fc81.tar
syndamia.com-e20e3a7b4961aec18be4e00db6a298c68ed0fc81.tar.gz
syndamia.com-e20e3a7b4961aec18be4e00db6a298c68ed0fc81.zip
Parentcb553764936a4941bbdf34ff515bcf50596c42e3 (diff)
[te/oop-2023/w5] Added solution link to exercises 1-7
2 files changed, 15 insertions, 1 deletions
-rw-r--r--src/teaching/oop-2023/index.md2
-rw-r--r--src/teaching/oop-2023/week5/index.md14
diff --git a/src/teaching/oop-2023/index.md b/src/teaching/oop-2023/index.md
index 6d5156d..411fd7f 100644
--- a/src/teaching/oop-2023/index.md
+++ b/src/teaching/oop-2023/index.md
@@ -18,5 +18,5 @@
|2 |29.02.2024|[Задачи](./week2/) \|\| [Решения](https://github.com/Syndamia/oop-2023-solutions/tree/main/week02) \|\| [GitHub classroom](https://classroom.github.com/a/3qPsfyyI)|
|3 |07.03.2024|[Задачи](./week3/) \|\| [Решения](https://github.com/Syndamia/oop-2023-solutions/tree/main/week03) \|\| [GitHub classroom](https://classroom.github.com/a/KPMqXsFp)|
|4 |14.03.2024|[Задачи](./week4/) \|\| [Решения](https://github.com/Syndamia/oop-2023-solutions/tree/main/week04) \|\| [GitHub classroom](https://classroom.github.com/a/qa_FfWeG)|
-|5 |21.03.2024|[Задачи](./week5/) <!-- \|\| [Решения](https://github.com/Syndamia/oop-2023-solutions/tree/main/week05) --> \|\| [GitHub classroom](https://classroom.github.com/a/42ZZ56Mg)|
+|5 |21.03.2024|[Задачи](./week5/) \|\| [Решения](https://github.com/Syndamia/oop-2023-solutions/tree/main/week05) \|\| [GitHub classroom](https://classroom.github.com/a/42ZZ56Mg)|
|6 |28.03.2024|[Задачи](./week6/) <!-- \|\| [Решения](https://github.com/Syndamia/oop-2023-solutions/tree/main/week05) \|\| [GitHub classroom](https://classroom.github.com/a/42ZZ56Mg)-->|
diff --git a/src/teaching/oop-2023/week5/index.md b/src/teaching/oop-2023/week5/index.md
index 1c16102..be66316 100644
--- a/src/teaching/oop-2023/week5/index.md
+++ b/src/teaching/oop-2023/week5/index.md
@@ -6,6 +6,8 @@ GitHub classroom: [classroom.github.com/a/42ZZ56Mg](https://classroom.github.com
### 1 задача - Капсулация с динамична памет
+&::solution-link [Решение](https://github.com/Syndamia/oop-2023-solutions/blob/main/week05/Exercise1.cpp)
+
Пациент в болница се характеризира с идентификационен номер (неотрицателно целочислено число) и име (низ от максимум 1024 знака).
Една болница има максимален капацититет на болни, които може да държи (максимален брой легла за тях).
@@ -16,6 +18,8 @@ GitHub classroom: [classroom.github.com/a/42ZZ56Mg](https://classroom.github.com
### 2 задача - Копиращ конструктор и оператор=
+&::solution-link [Решение](https://github.com/Syndamia/oop-2023-solutions/blob/main/week05/Exercise2.cpp)
+
Имплементирайте структура `FloatArray`, която запазва динамично-заделен масив от `float` стойности.
Размерът на масива се подава в конструктора.
@@ -25,6 +29,8 @@ GitHub classroom: [classroom.github.com/a/42ZZ56Mg](https://classroom.github.com
### 3 задача
+&::solution-link [Решение](https://github.com/Syndamia/oop-2023-solutions/blob/main/week05/Exercise3.cpp)
+
Имейл се характеризира с две стойности: адресът от който е изпратен (низ с максимална дължина от 128 знака) и съдържание (низ с неограничен размер).
Съобщението се подава като указател към знак, и трябва да заделите точно толкова динамична памет, колкото ви трябва за целия текст.
@@ -32,6 +38,8 @@ GitHub classroom: [classroom.github.com/a/42ZZ56Mg](https://classroom.github.com
### 4 задача
+&::solution-link [Решение](https://github.com/Syndamia/oop-2023-solutions/blob/main/week05/Exercise4.cpp)
+
Имплементирайте структура за касов бон, която запазва скрит динамично-заделен масив от цени (числа с плаваща запетая).
Можете да добавяте неограничен брой цени в края на касовия бон (ако масива е пълен, създавате по-голям и пренасяте стойностите).
Можете да премахвате цени според индекс (и всички следващи се преместват с една позиция назад).
@@ -41,6 +49,8 @@ GitHub classroom: [classroom.github.com/a/42ZZ56Mg](https://classroom.github.com
### 5 задача
+&::solution-link [Решение](https://github.com/Syndamia/oop-2023-solutions/blob/main/week05/Exercise5.cpp)
+
Един контролен списък (checklist) пази няколко неща: булева стойност, дали е избран или не, текстово съдържание (низ с "произволна" дължина) и масив от контролни списъци (всеки списък от този масив ще наричам "подсписък" за удобство).
Нека текстовото съдържание да не може да се редактира (задава се в конструктора и няма set-ър).
@@ -49,6 +59,8 @@ GitHub classroom: [classroom.github.com/a/42ZZ56Mg](https://classroom.github.com
### 6 задача
+&::solution-link [Решение](https://github.com/Syndamia/oop-2023-solutions/blob/main/week05/Exercise6.cpp)
+
Имате телефонен указател, който запазва масив от имена (низове).
В началото винаги започва празен.
Имплементирайте голяма четворка.
@@ -60,6 +72,8 @@ GitHub classroom: [classroom.github.com/a/42ZZ56Mg](https://classroom.github.com
### 7 задача
+&::solution-link [Решение](https://github.com/Syndamia/oop-2023-solutions/blob/main/week05/Exercise7.cpp)
+
Имплементирайте структура водомер, която скрито запазва отчетеното количество вода (double).
Има **единствено** конструктор по подразбиране, при който отчетеното количество е нула, метод `AddWater`, който увеличава брояча с подаденото количество вода и метод `Print`, който изкарва стойността на брояча на екрана.
Имплементирайте голяма четворка (когато е нужно).