![]() |
|
Модераторы: Poseidon |
![]()
|
|
| Redstuff |
|
|||
![]() Команда REDSTUFF ![]() ![]() Профиль Группа: Участник Сообщений: 497 Регистрация: 27.5.2006 Где: Санкт-Петербург Репутация: нет Всего: 1 |
Помогите плиз, скоро сессия, а времени нет всю прогу сделать всрок. Понимаю прошу слишком много, но хоть натолкните на мысли или может просто у кого-то есть что-то похожее.
(Перегрузка операторов) 1.) Над объектом "строка" реализовать следующий набор операций: + присоединение строки в конец, - вырезание подстроки из строки, ^ получение позиции подстроки в строке, ! переворачивание строки, = присваивание, >> загрузить строку из файла и ввести с консоли, << сохранить строку в файле и вывести на консоль. Сделать несколько конструкторов объекта. Работа со структурами и файлами 2.) Имеется массив окружностей. Построить прямоугольник минимального периметра, охватывающий все окружности. 3.) Разработать массив структур для хранения состояний манипулятора: углы отклонения руки манипулятора от осей трехмерного пространства в диапазоне от 0 до 90 градусов (углы: альфа, бета, гамма), глубину выдвижения манипулятора от 0 до 25 см, признак захвата (открыт/закрыт), и набор функции-членов для корректного изменения состояний. Модуль тестирования изменяет состояния в массиве по некоторому правилу. В задачах 2 и 3 реализовать сохранение в файле и загрузку из файла с помощью потоковых операций. Наследование и виртуальные функции 4.) Имеются следующие графические примитивы: точка, сектор, эллипс, прямоугольник, ромб, трапеция. Из этих примитивов строятся следующие фигуры: 1) в центре трапеции находится эллипс, 2) на сторону прямоугольника опирается трапеция, а в ее центре находится эллипс, 3) внутри ромба находится сектор такого же угла как угол между сторонами ромба. На рабочем поле могут одновременно находиться как фигуры, так и примитивы в любом количестве и сочетании. Все, что находится на рабочем поле, может перемещаться, вращаться относительно точки, отражаться относительно оси, масштабироваться, перерисовываться, сохранятся в файле. Необходимо: 1) составить иерархию классов объектов для описания примитивов и фигур 2) разработать систему конструкторов для инициализации объектов 3) реализовать виртуальные функции для выполнения перечисленных операций с примитивами и фигурами 4) подготовить модульные тесты для каждой операции Это сообщение отредактировал(а) Redstuff - 27.5.2006, 16:40 |
|||
|
||||
| MAKCim |
|
||||||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 6 Всего: 207 |
обычное агрегирование
пишешь класс field он агрегирует массив/список/вектор из shape shape - интерфейс к любой фигуре/примитиву (абстрактный класс) содержит виртуальные функции для твоих операций вообще сюда идеально подходит паттерн Composite
сам класс можно вкратце описать так
-------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||||||
|
|||||||||
| Redstuff |
|
||||
![]() Команда REDSTUFF ![]() ![]() Профиль Группа: Участник Сообщений: 497 Регистрация: 27.5.2006 Где: Санкт-Петербург Репутация: нет Всего: 1 |
В этом задании рисовать не надо, препод сказал что просто функции написать.
Сдесь я понимаю можно описать все действия со строкой? Примечание к задаче со "строкой": строка уже дана в функции. |
||||
|
|||||
| MAKCim |
|
||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 6 Всего: 207 |
ну и никто и не будет здесь рисовать
в таком ключе можно сделать все функции -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||
|
|||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 2 Всего: 183 |
Для домашних заданий, курсовых, существует "Центр Помощи"
Тема перенесена! -------------------- ... |
|||
|
||||
![]()
|
| Правила форума "Центр помощи" | |
|
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Центр помощи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |