Вы находитесь на странице: 1из 15

МИНОБРНАУКИ РОССИИ

ВЛАДИВОСТОКСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ


ЭКОНОМИКИ И СЕРВИСА

ИНСТИТУТ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ

КАФЕДРА ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И СИСТЕМ

ОТЧЁТ
ПО УЧЕБНОЙ ОЗНАКОМИТЕЛЬНОЙ
ПРАКТИКЕ

Студент И.И. Иванов


гр. БИС-19-04 _______________________
Руководитель В.В. Ивин
канд. экон. наук, доцент _______________________
Владивосток 2021

2
Задание

Используя объектно-ориентированную методологию разработки про-


граммных продуктов, создайте кроссплатформенное приложение с оконным
интерфейсом, реализующее алгоритм в соответствии с вариантом задания.
1. Используя произвольные язык программирования и среду
разработки создайте программу, которая отображает на экране монитора
график кривой или поверхности в декартовой и полярной системах
координат (если уравнение кривой в одной из систем координат отсутствует,
то оно может быть заменено уравнением в параметрической форме) с
центром в центре экрана монитора (окна или иной прямоугольной области
экрана).
При изменении размеров окна, график и все его атрибуты
(координатная сетка, метки на шкале, подписи и т.д.) должны автоматически
масштабироваться.
Параметры уравнения кривой или поверхности должны вводиться в
специально отведённые ячейки экранной формы программы.
Вариант 8 – дельтоида.
2. Используя результаты предыдущего задания создайте анимацию
примитива, движущегося по траектории построенной кривой:
в качестве примитива используется закрашенная окружность красного
цвета радиуса r > 2.

3
Содержание

Введение...................................................................................................................4
1 Анализ технического задания.............................................................................5
1.1 Дельтоида: основные сведения и область применения.............................5
1.2 Математический аппарат для построения графика...................................5
1.3 Блок-схема работы программы....................................................................5
2 Выбор языка программирования и среды разработки......................................6
2.1 Языки программирования............................................................................6
2.2 Среды разработки..........................................................................................6
3 Разработка программы.........................................................................................7
3.1 Реализация диаграммы классов алгоритма.................................................7
3.2 Реализация графического интерфейса........................................................7
3.3 Реализация программного кода...................................................................7
4 Тестирование программы....................................................................................8
Заключение..............................................................................................................9
Список использованных источников..................................................................10
Приложение А.......................................................................................................11

4
Введение

Прежде чем приступить к выполнению задания необходимо:


 ознакомиться с историей появления и практическим
применением кривой или поверхности в соответствии с
вариантом задания;
 используя различные источники информации найти уравнения
кривой или поверхности в соответствии с вариантом задания и
разобраться с математическим аппаратом;
 создать блок-схему алгоритма или диаграмму Насси-
Шнейдермана по-строения кривой или поверхности в
соответствии с вариантом задания;
 в соответствии с созданной блок-схемой или диаграммой Насси-
Шнейдермана произвести кодирование в выбранной среде
программирования;
 произвести отладку составленного алгоритма и программы;
 привести 2-3 контрольных примера, которые демонстрируют
правиль-ность выполнения задания;
 подготовить и оформить отчёт в соответствии с требованиями;
 сформировать итоговый комплект документов (программные
модули в формате выбранной среды программирования и отчёт
по практике в формате Word);
 произвести защиту отчёта по практике.

5
1 Анализ технического задания

1.1 Дельтоида: основные сведения и область применения

Из многочисленного семейства кривых высшей математики


изучавшихся еще с 18 века отдельное место занимают кривые механического
происхождения, т.е. которые имеют отношение к кинематике или
используются в механизмах.
Одним из древнейших способов образования кривых является
кинематический способ, при котором кривая получается как траектория
движения точки. Циклоидальная кривая – плоская кривая, рисуемая точкой
на окружности, катящейся по какой-нибудь линии. Применение
циклоидальных кривых разнообразно, как и различные их виды. Одним из
самых известных случаев применения циклоиды является «ледяная гора» –
кривая наискорейшего спуска, перевёрнутая циклоида. Циклоидальные
кривые широко применяются в технике для построения профилей
вращающихся механизмов. Дальнейшее исследование циклоидальных
кривых может открыть новые возможности их оптимального применения.
В 1696 году И. Бернулли поставил задачу о нахождении кривой
наискорейшего спуска, или, иначе говоря, задачу о том, какова должна быть
форма ледяной горки, чтобы, скатываясь по ней, совершить путь из
начальной точки А в конечную точку В за кратчайшее время. Искомую
кривую назвали «брахистохроной», т.е. кривой кратчайшего времени. Ясно,
что кратчайшим путем из точки A в точку B является отрезок AB. Однако
при таком прямолинейном движении скорость набирается медленно и
затраченное на спуск время оказывается большим. Более того, брахистохрона
имеет также ещё одно удивительное свойство: тяжёлое тело, помещённое в
любую точку арки циклоиды, достигает горизонтали за одно и то же время.
Математики доказали, что искомой кривой является перевернутая циклоида.
Методы, развитые этими учеными при решении задачи о брахистохроне,
положили начало новому направлению математики – вариационному
исчислению.
Обычные циклоиды были изучены Галилео Галилеем и Марином
Мерсенном в 1599 году, но специальные циклоидальные кривые были
впервые рассмотрены Оле Ремерем в 1674 году при изучении лучшей формы
зубьев для зубчатых колес.
Леонард Эйлер впервые упоминает настоящую дельтоиду в 1745 году в
связи с задачей из оптики. Название кривая получила за сходство с греческой
буквой Δ. Её свойства впервые изучались Л. Эйлером в XVIII веке, а затем Я.
Штейнером в XIX.
Если больший круг будет неподвижен, а меньший будет катиться,
касаясь его изнутри, то любая точка окружности этого меньшего круга
опишет кривую, называемую гипоциклоидой (подциклоидой).
Рассмотрим случай когда одна окружность, подвижная, катится по
другой, неподвижной. Пусть теперь подвижная окружность находится
6
внутри неподвижной. Кривая, которую при этом описывает точка
окружности, называется гипоциклоидой (от греч. «гипо» - под, внизу). Вид ее
зависит от соотношения радиусов R и r неподвижной и подвижной
окружностей. Если радиус подвижного круга будет в два, три, вообще в n раз
меньше радиуса неподвижного, то получится гипоциклоида с двумя, тремя,
вообще с n заострениями.
Перенесем свое внимание на гипоциклоиду с тремя заострениями. Она
имеет два названия: дельтоида или кривая Штейнера.
Дельтоида (или кривая Штейнера) — это плоская алгебраическая
кривая, описываемая фиксированной точкой подвижной окружности, которая
касается изнутри неподвижной окружности втрое большего радиуса и
катится по ней без скольжения (катящейся по внутренней стороне другой
окружности, радиус которой втрое больше радиуса первой).
Дельтоида является частным случаем гипоциклоиды при k = 3.
Дельтоиды возникают в нескольких областях математики, например:
1. Множество комплексных собственных значений
унистохастических матриц третьего порядка образует дельтоиду.
2. Поперечное сечение множества унистохастических матриц
третьего порядка образует дельтоиду.
3. Множество возможных следов унитарных матриц,
принадлежащих группе SU (3), образует дельтоиду.
4. Пересечение двух дельтоид параметризует семейство
комплексных матриц Адамара шестого порядка.
5. Все прямые Симсона данного треугольника, образуют
огибающие в форме дельтоиды. Она известна, как дельтоида
Штейнера или гипоциклоида Штейнера в честь Якоба Штейнера,
который описал форму и симметрию кривой в 1856 году,
огибающей для семейства прямых, которые делят площадь
треугольника пополам, является кривая, похожая на дельтоиду, с
вершинами в серединах 3 медиан.
6. Дуги этой дельтоиды являются дугами гиперболы, которые
имеют асимптоты, проходящие через стороны треугольника.
7. Дельтоида была предложена в качестве решения задачи об
иголке. Задача об иголке состоит в определении минимальной
площади фигуры на плоскости, в которой единичный отрезок,
«иглу», можно развернуть на 180 градусов, вернув его в исходное
положение с обращённой ориентацией. Такое возможно
проделать в круге радиуса 1/2. Другой пример — фигура,
ограниченная дельтоидой, — показан на картинке, он имеет
меньшую площадь.

7
Рис. 1 – Пример построения дельтоиды (дельтоида изображена
красным цветом)

Рис. 2 – Разворот иглы внутри дельтоиды

1.2 Математический аппарат для построения графика

Дельтоида может быть представлена (с точностью до вращения и


параллельного переноса) следующим параметрическим уравнением:

где a радиус катящегося круга, b радиус круга, по которому катится


вышеупомянутый круг, на рисунке 1 b = 3a.
В комплексных координатах оно принимает вид

Неявное уравнение в прямоугольной системе:

8
Параметрическое:

В полярных координатах оно принимает вид:

Свойства дельтоиды:
1. Кривая имеет три особенности (каспа) соответствующие t = 0 , ±
2π/3 в параметрическом уравнении выше.
2. 3 вершины дельтоиды – это 3 вершины равностороннего
треугольника.
3. Дельтоида является рациональной кривой нулевого рода.
4. Длина пересечения области, ограниченной дельтоидой, с любой
её касательной фиксирована и равна 4/3 * R, где R – радиус
неподвижной окружности.
5. Дельтоида – алгебраическая кривая 4 порядка.
6. Длина кривой L = 16/3 * R, где R — радиус неподвижной
окружности.
7. Площадь, ограничиваемая дельтоидой, S = 2/9 * π * R2.
8. Касательные к двум ветвям дельтоиды (на рисунке все три ветви
черного цвета), проведенные в двух точках концов отрезка
касательной к третьей ее ветви (именуемых двумя связными
точками, они на рисунке синего цвета), пересекаются всегда под
прямым углом (на рисунке не показан). Вершина этого прямого
угла всегда лежит на окружности малого круга (на том же
рисунке малый круг красного цвета и описан красной точкой в
средине синего отрезка), касающегося трех указанных ветвей.

1.3 Блок-схема работы программы

9
2 Выбор языка программирования и среды разработки

2.1 Языки программирования

2.2 Среды разработки

10
3 Разработка программы

3.1 Реализация диаграммы классов алгоритма

3.2 Реализация графического интерфейса

3.3 Реализация программного кода

11
4 Тестирование программы

12
Заключение

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

1. Иванова, Г.С. Технология программирования: учебник для


студентов вузов, обуч. по направл. «Информатика и
вычислительная техника» / Г.С. Иванова. – 3-е изд., стер. – М. :
КНОРУС, 2016. – 334 с. – (Бакалавриат).
2. Колдаев, В.Д. Основы алгоритмизации и программирования: учеб.
пособие для студентов образоват. учреждений сред. проф.
образования / В.Д. Колдаев ; под ред. Л.Г. Гагариной. – М. :
ФОРУМ : ИНФРА-М, 2015. – 416 с. : ил. – (Про-фессиональное
образование).
3. Лафоре, Р. Структуры данных и алгоритмы JAVA / Р. Лафоре ;
[пер. с англ. Е. Матвеева]. – СПб. : Питер, 2015. – 704 с. : ил. –
(Классика computer science).
4. Мартин, Р. Чистый код. Создание, анализ и рефакторинг / Р.
Мартин ; [пер. с англ. Е. Матвеева]. – СПб. : Питер, 2015. – 464 с. :
ил. – (Библиотека программиста).
5. Гвоздева, В.А. Введение в специальность программиста: учебник
для студентов образоват. учреждений сред. проф. образования,
обуч. по спец. «Прогр. обеспеч. вычисл. техники и автоматиз.
систем» / В.А. Гвоздева. – 2-е изд., испр. и доп. – М. : ФОРУМ :
ИНФРА-М, 2015. – 208 с. : ил. – (Профессиональное об-
разование).
6. Голицына, О.Л. Языки программирования: учеб. пособие для
студентов образоват. учреждений сред. проф. образования / О.Л.
Голицына, Т.Л. Партыка, И.И. Попов. - 3-е изд., перераб. и доп. –
М. : ФОРУМ : ИНФРА-М, 2015. – 400 с. : ил. – (Профессиональное
образование).
7. Семакин, И.Г. Основы алгоритмизации и программирования.
Практикум: учеб. пособие для студентов образоват. учреждений
сред. проф. образования / И.Г. Семакин, А.П. Шестаков. – 3-е изд.,
стер. – М. : Академия, 2015. – 144 с. – (Профессиональное
образование).

14
Приложение А

15