Jump to content

Задачи - ООП, Седмица 8, 08.04.2026

За решаване

Задача 1

warn За всеки клас имплементирайте голяма петица! Всички методи трябва да достъпни и за константни обекти, когато е възможно.

Реализирайте система за менажиране на многостепенни ракети. След изтрелване на ракетата, най-долната "степен" се активира. При изразходване на горивото, тя се откача от другите степени и следващата степен се активира.

https://upload.wikimedia.org/wikipedia/commons/d/d6/Black_Brant.jpg
В тази ракета, степените са оцветени по различен начин: бяло, червено и черно.

Всяка степен си има:

Една степен изразходва горивото си за "време на горене" секунди, като във всяка секунда прилага ускорение на себе си и товара с "тяга" нютони. Може да зачитаме праволинейно ускорение и да не изчисляваме промяната на количеството гориво. Това означава, че можем да използваме следните формули за дадена степен:

./img/formulas.png

Където:

Степените се комбинират в ракета. Всяка ракета си има име и неограничен брой степени.

За една ракета имплементирайте методи, чрез които се намира:

Допълнително, имплементирайте методи Export и Import, чрез които всички данни на една ракета се запазват или вземат в/от двоичен файл.

Неограничено количество ракети и необвързани степени се съхраняват в хангари. Имплементирайте методи за добавяне на степени в хангара и преместване на степени в ракети.

Освен това имаме площадки от които ракети могат да се изтрелват. Всяка площадка съдържа:

Финално, имаме космическа агенция, която съдържа неограничен брой хангари и площадки. Всички хангари в космическата агенция могат да се експортират и импортират в един двоичен файл и всички площадки в един текстови файл.

Реализирайте конзолен интерфейс, който поддържа командите: