Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсач / курсач.doc
Скачиваний:
25
Добавлен:
08.03.2015
Размер:
383.49 Кб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ и науки РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное Государственное бюджетное образовательное учреждение высшего профессионального образования

«РыбинскИЙ государственнЫЙ авиационнЫЙ технологическИЙ УНИВЕРСИТЕТ имени П.А. Соловьева»

Факультет радиоэлектроники и информатики

Кафедра МПО ЭВС

КУРСОВАЯ РАБОТА

по дисциплине

«Программирование»

на тему

«Выявление квадратов созданных точками на плоскости»

Студент группы ЗВП-12 Сухов А. Н.

Руководитель Паламарь И. Н.

Рыбинск 2013

Содержание

Содержание 2

Задание на курсовую работу 3

Введение 4

1.Анализ задания 5

2.Обоснование выбора и разработка структур данных 6

3.Разработка алгоритмов 7

5Руководство пользователя. 12

Заключение. 15

Список использованных источников 16

Приложение А. Листинг программы 17

Задание на курсовую работу

Имеется множество точек на плоскости. Выявить все квадраты, которые могут быть образованны этими точками.

Программа должна обеспечивать:

  • Ввод данных с клавиатуры и из файла.

  • Обработку данных в соответствии с заданием.

  • Вывод результата на экран и в файл.

  • Использование графического режима.

  • Использование динамических структур данных.

  • Использовать манипулятор «мышь».

Введение

Целью преподавание дисциплины «Программирование» является обучение студентов навыкам создания программ с использованием современных технологий структурного и модульного программирования, освоение и получение навыков работы на современных вычислительных средствах, отладки и тестирования программ.

Основными задачами написания курсовой работы являются изучение студентами теоретических основ алгоритмизации и проектирования программ, технологии структурного программирования, приемов программирования на конкретных алгоритмических языках, основ организации вычислительного процесса, привитие навыков оценки сложности алгоритма, отладка и тестирование программ, понятие об основных тенденциях развития языков программирования.

  1. Анализ задания

Необходимо разработать программу, выявляющую все квадраты, которые могут быть построены из множества точек на плоскости.

Входными данными являются множество точек. Выходными данными являются графически изображенные квадраты и их количество.

В программе должен присутствовать графический интерфейс, должны быть использованы динамические структуры.

  1. Обоснование выбора и разработка структур данных

Модуль DynStruct.

function InitPointList : pPointNode – возвращает ссылку на начальный элемент списка точек.

procedure DestroyPointList( var root : pPointNode ) – производит удаление всего списка точек.

procedure AddPointNode ( root: pPointNode; X, Y : integer ) – производит добавление точки в конце списка точек.

function InitSquareList : pSquareNode – возвращает ссылку на начальный элемент списка квадратов.

procedure DestroySquareList( var root : pSquareNode ) – производит удаление всего списка квадратов.

procedure AddSquareNode( root: pSquareNode; P1, P2, P3, P4 : tPoint ) – производит добавление точки в конце списка квадратов.

Модуль SquareFinder.

function FindSquares( listRoot : pPointNode ) : pSquareNode – передаем ссылку на корень списка точек и возвращаем ссылку на квадрат.

function vecLength( v : tPoint ) : real – значение длинны вектора между двумя точками. Передает координаты вектора.

Модуль Unit 1.

procedure TForm1.FormPaint(Sender: TObject) – прорисовка найденных квадратов различными цветами.

procedure TForm1.FormDestroy(Sender: TObject) – очистка формы и списков.

procedure TForm1.img1MouseUp(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer) – при отпускании кнопки мыши происходит запись координат точки и добавление ее в список.

Соседние файлы в папке курсач