diff options
| Commit | 003ae8cede12eab012a49f982c6124adf6fe39e7 (patch) | |
|---|---|---|
| Author | 2026-05-27 09:29:29 +0300 | |
| Committer | 2026-05-27 09:29:29 +0300 | |
| Files | b6ae04581581d325ea49bb7c26b84cc056ca98fc | |
| syndamia.com-003ae8cede12eab012a49f982c6124adf6fe39e7.tar syndamia.com-003ae8cede12eab012a49f982c6124adf6fe39e7.tar.gz syndamia.com-003ae8cede12eab012a49f982c6124adf6fe39e7.zip | ||
| Parent | a975e73720fd12f4eb25f0e1e4dd88fef33f24d1 (diff) | |
feat(teaching/oop-2025/w14): Add exercise
3 files changed, 37 insertions, 0 deletions
| -rw-r--r-- | meta/meta.tsv | 1 | ||||
| -rw-r--r-- | src/teaching/oop-2025/index.du | 9 | ||||
| -rw-r--r-- | src/teaching/oop-2025/week14/index.du | 27 |
diff --git a/meta/meta.tsv b/meta/meta.tsv index 7f846d7..0402990 100644 --- a/meta/meta.tsv +++ b/meta/meta.tsv @@ -129,6 +129,7 @@ teaching/oop-2025/week10/index.html Задачи - ООП, Седмица 10, 22 teaching/oop-2025/week11/index.html Задачи - ООП, Седмица 11, 29.04.2026 Условията на задачите за упражнение. teaching/oop-2025/week12/index.html Задачи - ООП, Седмица 12, 13.05.2026 Условията на задачите за упражнение. teaching/oop-2025/week13/index.html Задачи - ООП, Седмица 13, 20.05.2026 Условията на задачите за упражнение. +teaching/oop-2025/week14/index.html Задачи - ООП, Седмица 14, 27.05.2026 Условията на задачите за упражнение. blog/connect-to-mysql-in-dotnet-ef/index.html Connect to MySql in .NET and Entity Framework Connecting a .NET application to a MySql database (with Entity Framework) can be tricky. Here is what works for me. diff --git a/src/teaching/oop-2025/index.du b/src/teaching/oop-2025/index.du index 28790c8..8171ef3 100644 --- a/src/teaching/oop-2025/index.du +++ b/src/teaching/oop-2025/index.du @@ -152,3 +152,12 @@ |: |: [url ./week13 Задачи] + +|: 14 +|: 27.05.2026 +|: Диамантен проблем + +|: +|: +|: +[url ./week14 Задачи] diff --git a/src/teaching/oop-2025/week14/index.du b/src/teaching/oop-2025/week14/index.du new file mode 100644 index 0000000..c01f3b8 --- /dev/null +++ b/src/teaching/oop-2025/week14/index.du @@ -0,0 +1,27 @@ +# Задачи - ООП, Седмица 14, 27.05.2026 + +'define expected-reading 2 min +'define created 27 May 2026 +'define edited 27 May 2026 +[$pagenav] + +## За решаване + +### Задача + +Реализирайте клас [`Sensor`], който съхранява целочислен неотрицателен сериен номер и число с плаваща запетая за напрежение на захранване. +Също имплементирайте методи, налични във всички наследници: +.bulleted +- [`GetType`], който връща типа на сензора (най-десните 2 цифри от серийния номер). +- [`EnoughSupply`], който приема напрежение, което се подава на сензора и връща дали е достатъчно или не + +Реализирайте негови наследници [`CameraSensor`] и [`GyroSensor`]. + +[`CameraSensor`] съхранява резолюция (височина и ширина) и брой взети снимки. +При класа имплементирайте метод [`TakeSnapshot`], който инкрементира бройката взети снимки. + +[`GyroSensor`] съхранява скорост на измерване в [`dps`] (ъгли в секунда). +Имплементирайте негов метод [`Rotate`], който по получен ъгъл връща най-малкото количество от време, което е нужно за да може сензора да измере въртенето. + +Реализирайте наследник [`DSLR`] на [`CameraSensor`] и [`GyroSensor`], който допълнително съхранява изходна резолюция (височина и ширина) и скорост на вземане на кадър. +Имплементирайте член-функция [`CorrectedCapture`], която по подаден ъгъл, прави снимка и връща колко кадъра ще отнемат докато въртенето е напълно измерено. |