blob: bcf822041259fd4dd4991a08dc74fc2d2d0af3dc (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
'def title Задачи - ООП, Седмица 14, 27.05.2026
'def desc Условията на задачите за упражнение.
# {title}
{pagenav 2 min;27 May 2026;27 May 2026}
## За решаване
### Задача
Реализирайте клас {` Sensor}, който съхранява целочислен неотрицателен сериен номер и число с плаваща запетая за напрежение на захранване.
Също имплементирайте методи, налични във всички наследници:
.bulleted
- {` GetType}, който връща типа на сензора (най-десните 2 цифри от серийния номер).
- {` EnoughSupply}, който приема напрежение, което се подава на сензора и връща дали е достатъчно или не
Реализирайте негови наследници {` CameraSensor} и {` GyroSensor}.
{` CameraSensor} съхранява резолюция (височина и ширина) и брой взети снимки.
При класа имплементирайте метод {` TakeSnapshot}, който инкрементира бройката взети снимки.
{` GyroSensor} съхранява скорост на измерване в {` dps} (ъгли в секунда).
Имплементирайте негов метод {` Rotate}, който по получен ъгъл връща най-малкото количество от време, което е нужно за да може сензора да измере въртенето.
Реализирайте наследник {` DSLR} на {` CameraSensor} и {` GyroSensor}, който допълнително съхранява изходна резолюция (височина и ширина) и скорост на вземане на кадър.
Имплементирайте член-функция {` CorrectedCapture}, която по подаден ъгъл, прави снимка и връща колко кадъра ще отнемат докато въртенето е напълно измерено.
|