Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками»


Скачать 208.83 Kb.
Название Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками»
страница 3/6
Тип Курсовая
rykovodstvo.ru > Руководство эксплуатация > Курсовая
1   2   3   4   5   6

2.2 Функциональное назначение



Программа может применяться для создания графических изображений

Для реализации этой задачи необходимо создать список, в который будут заноситься объекты различных пользовательских типов (например, линии). Список должен обладать всеми необходимыми методами, используемыми для обработки находящихся в нем данных: добавление, удаление, поиск, изменение и выборка элементов.

Пользователь может выбрать один из графических примитивов, создаваймых на основе линий, например, кривая Безье, установить цвет объекта и его позицию на плоскости рисунка. После создания объект появляется на экране, а список составляющих его линий выводится в ListBox-элемент на форме. Пользователь имеет возможность менять цвет объекта, удалять объект, а также удалять отдельные составляющие его линии.

2.3 Описание логической структуры



Курсовая работа представляет собой программу, написанную на C++ Builder 6. Для упрощения программного кода используется иерархия классов.

Абстрактный класс Spisok содержит основные свойства и методы, которые необходимы всем его наследникам, то есть, общие для всех списков данные: структура List, указатели *top и *p, чисто-виртуальные функции:

  • add(Data value, AnsiString name). Добавление элемента с именем «Name», содержащего информацию «Data». Data – это шаблонный тип данных, который может принять значение любого переданного в класс типа. Это позволяет использовать один и тот же класс списка для хранения данных разных типов. Функция не возвращает значений.

  • remove(int index). Удаляет элемент с порядковым номером «Index» из списка. Для этого создается дополнительный указатель на удаляемый элемент, а ссылка с предыдущего элемента переносится на следующий, после чего, отделенный от списка элемент удаляется из памяти стандартной процедурой delete(*list). Функция не возвращает значений.

  • change(int index, Data value). Изменяет значение элемента с порядковым номером «Index» на значение «Data».

  • int count(). Возвращает число элементов в списке. Подсчет производится с помощью цикла с предусловием до тех пор, пока не будет достигнут конец списка. На каждом шаге цикла происходит инкремент счетчика.

  • Data getvalue(int index). Возвращает информационное поле элемента с порядковым номером «Index». Происходит обход списка до тех пор, пока не будет достигнут порядковый номер (цикл с параметром). После этого возвращается информационное поле.

  • AnsiString getname(int index). Возвращает имя элемента с порядковым номером «Index». Работает аналогично предыдущей функции.

  • int search (AnsiString name). Возвращает порядковый номер первого найденного элемента с именем «Name».

Класс Spisok является абстрактным, так как он содержит выше указанные чисто-виртуальные функции.

Класс Stack – наследник класса Spisok. В нем переопределяются все чисто-виртуальные функции предка, им присваивается описанное выше назначение.

Класс Queue – очередь - наследник класса Spisok. Этот класс может использовать все функции предка применительно к своим свойствам, но очередь все же отличается от стека своим созданием и добавлением элементов, поэтому функция добавления элементов в этом классе переопределяется еще раз, уже для очереди.

Класс TLine – линия. Это основной графический примитив программы. Остальные объекты строятся из линий. Линия передается в качестве информационного поля в классы списков. Линия имеет несколько свойств:

  • p1, p2 – точки, каждая из которых имеет 2 координаты: x и y. Это конечные точки линии (отрезка). Точка описывается отдельной структурой point.

  • Color – цвет линии. Используется стандартный тип C++ Builder – TColor.

  • Secondary – логическая переменная, показывающая, является ли данная линия вспомогательной для построения объекта, либо она основная. Для более наглядного представления способа построения объектов в программе используются вспомогательные линии, которые при желании пользователь может отключать.

Методы класса TLine:

  • setline(point p1,point p2,long int col,bool sec). Устанавливает значения свойств линии в соответствии с переданными параметрами.

  • point cut(float k). Возвращает точку на линии, которая находится на расстоянии, равном k*<�длина линии> от ее первого конца.

Класс BCurve – Кривая Безье. Среди свойств объекта: имя, цвет основных и вспомогательных линий, 2 опорные линии и коэффициент гладкости k (чем больше коэффициент, тем больше линия похожа на ломаную. Максимум k=0.99, минимум – 0.01. Оптимальное значение k=0.25). Класс имеет 2 функции:

  • queue Create(float,Tline,Tline,TColor,TColor,bool,AnsiString). Возвращает список линий, принадлежащих созданной по переданным параметрам кривой Безье.

  • queue Load().Возвращает список линий, принадлежащих созданной по заранее установленным параметрам кривой Безье.

Класс TRectangle – Прямоугольник. Создает список из 4-х линий по переданным параметрам с помощью функции: queue Create(int x1,int y1,int x2,int y2,TColor col).

1   2   3   4   5   6

Похожие:

Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Курсовая работа по курсу: Общая социологическая теория
В странах Запада уже более 25% молодежи-Эмо. В каждой субкультуре существуют свои ценности: модели поведения, этические нормы, степень...
Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Курсовая работа по курсу «Основы маркетинга», тема «План первоначального...
Глухов П. В. Курсовая работа по курсу «Основы маркетинга», тема «План первоначального продвижения товара на новый рынок.» Челябинск:...
Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Курсовая работа по дисциплине ”Экономическая теория” на тему: механизм...

Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Курсовая работа по курсу: «Монтаж и наладка электрооборудования»...
Кру для заданного трансформатора табл Описать их монтаж, наладку, эксплуатацию и ремонт. Разработать электрическую принципиальную...
Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Российской Федерации «мати»
Курсовая работа по Методам Комплексного Исследования и Оценки Положения Молодежи в Обществе на тему
Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Курсовая работа По дисциплине: «Бухгалтерский учет»
На тему: Организационные формы бухгалтерского учета на предприятии и их совершенствование в условиях рынка
Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Конспект урока на тему: Работа с конструктором Робот lego weDo. Программирование
Цель: научить создавать программы и помочь учащимся испытать модель «Танцующие птицы»
Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Курсовая работа по войсковому питанию на тему: холодный цех
Санитарно-гигиенические требования по организации питания. Личная гигиена обслуживающего персонала
Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Курсовая работа по Банковскому делу на тему Международные финансовые организации
Бригхэм Ю., Хьюстон Дж. Финансовый менеджмент. Экспресс-курс. – Спб.: Питер, 2007. С. 61 9
Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Курсовая работа на тему: Выставки и ярмарки как инструменты маркетинговой...
Охватывают широкий спектр тематик, среди которых
Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Курсовая работа по дисциплине «Организация производства» На тему:...
Организация труда
Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Курсовая работа по дисциплине «Экономика организации» На тему «Внешнеэкономическая...
Перспективы предприятия ОАО «Пиломатериалы «Красный октябрь»
Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Курсовая работа по предмету «Банковские операции» на тему «Внешнеэкономическая...
Порядок обязательной продажи части валютной выручки предприятиями, организациями и учреждениями
Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Курсовая работа по курсу “Основы маркетинга” Тема «Стратегии маркетинга...
Санкт-Петербургский государственный технологический институт (технический университет)
Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Курсовая работа На тему: «клиника и лечение трихинеллеза»
Экспериментально трихинеллезом заражаются все виды млекопитающих животных и многие виды птиц
Курсовая работа по курсу: «программирование на с++» На тему: «Работа со списками» icon Курсовая работа по дисциплине «Бухгалтерский финансовый учет» на...
Федеральное государственное бюджетное образовательное учреждение высшего образования

Руководство, инструкция по применению




При копировании материала укажите ссылку © 2024
контакты
rykovodstvo.ru
Поиск