Введение
В настоящее время область применения графиков математических функций очень широка. Они нашли применение в таких сферах как, непосредственно высшая математика и физика (научная сфера), курсы валют, прибыль и продажи (экономическая сфера), отслеживание рождаемости и смертности (демографическая сфера) и многие другие. Значимость математических функций определяется их активным использованием в качестве базовых структур для последующей реализации расчетов и создания различных процессов. Их графическая визуализация осуществляется разными путями, и один из них – с помощью программного кода – одного из самых рациональных и наиболее точных методов задания и построения графиков функций [1].
Цель исследования: разработать на языке программирования C++ приложение построения графиков функции от одной переменной.
Для решения поставленных задач были выбраны следующие методы исследования: систематизация специальной литературы и мировых информационных ресурсов по проблеме исследования.
Начало работы над программой состоит из создания проекта в Visual Studio с базовой совместимостью Windows Forms и языка С++, а так же добавлением необходимых библиотек, создания окон разработки и изменения параметров проекта для его последующей работоспособности. Работа над программой велась в среде программирования с тремя открытыми окнами: файл кода формата .cpp, конструктор формы и код-описание для работы формы формата .h (библиотека).
На форму добавлены объекты: объект Chart, отвечающий за построения диаграмм; GroupBox – объект, дающий возможность группирования всех параметров в поле группы; Label – объект-текст; ComboBox – объект переключения контекстных оверлеев; TextBox – объект ввода данных; Button – кнопка взаимодействия; MenuStrip – объект-меню.
В теле программы задан цикл от одной переменной, относительно которой будет осуществляться построение графиков формы. В цикл помещены формулы основных математических функций, таких как синус y = sin(x), косинус y = cos(x), тангенс y = tg(x), котангенс y = ctg(x), линейная y = x и y = - x, квадратичная y = x^2, степенная y=x^3, модуль y = |x| и y = - |x|, обратная пропорциональность y = 1/x и y = - 1/x [3].
После задания всех необходимых формул, задействуется объект Chart, который способен преобразовывать алгебраическую форму в графическую [2]. Графики выбранных функций обладают свойством бесконечности по оси X. В программе пользователю дается возможность самостоятельно задавать необходимый ему промежуток, на котором он хочет отследить функцию. Таким образом, снова повышается производительность программы и улучшается наглядность и восприятие построенных программой графиков. Поэтому на форму были добавлены два поля: для задания начальной и конечной точки необходимого интервала.
На последнем этапе разработки приложения велось формирование интерфейса программы с целью сделать его «дружелюбным». Для этого были размещены все задействованные объекты в структурированном, понятном пользователю виде, добавлены сообщения пользователю с подсказками о заполнении полей. Например, если пользователь ввел не все необходимые данные, программа попросит его сделать проверку и повторить попытку. Затем проведено тестирование программы.
Рис. 1. Пример построения графика функции y=sin(x) на интервале по x [-5;5]
Заключение
В ходе работы была разработана программа, основанная на использовании Windows Forms и написанная на языке программирования C++, выполняющая построение графиков элементарных математических функций.
В приложении указывается начальная и конечная точка для задания интервала просмотра на плоскости создаваемого графика текущей функции.
После написания кода программы и разработки интерфейса к ней, было произведено тестирование программы, которое показало не только исправность ее работы, но и хорошую оптимизацию, полное удовлетворение основным требованиям.
Данная программа моет быть использована при изучении высшей математики, численных методов, математических основ автоматического управления, в курсе базовой физики.
Список литературы
1. Зыков С. В. Программирование. Объектно-ориентированный подход : учебник и практикум для вузов / С. В. Зыков. — Москва : Издательство Юрайт, 2020. — 155 с. — (Высшее образование). — Текст : непосредственный.
2. Кувшинов Д. Р. Основы программирования : учебное пособие для среднего профессионального образования / Д. Р. Кувшинов. — Москва : Издательство Юрайт, 2020. — 105 с. — (Профессиональное образование). —— Текст : непосредственный.
3. Огнева М. В. , Кудрина Е. В. Программирование на языке С++: практический курс : учебное пособие для вузов / М. В. Огнева, Е. В. Кудрина. — Москва : Издательство Юрайт, 2020. — 335 с. — (Высшее образование). — Текст : непосредственный.
4. Садовничая И. В. Математический анализ. Предел и непрерывность функции одной переменной : учебное пособие для среднего профессионального образования/ И. В. Садовничая, Т. Н. Фоменко. – 2-е изд., перераб. И доп. – Москва: Издательство Юрайт, 2020. – 115 с. – (Профессиональное образование). – Текст : непосредственный.
5. Садовничая И. В. Математический анализ. Функции многих переменных : учебник и практикум для вузом/ И. В. Садовничая, Т. Н. Фоменко. – 2-е изд., перераб. И доп. – Москва: Издательство Юрайт, 2020. – 206 с. – (Высшее образование). – Текст : непосредственный.
6. Трофимов В. В. , Павловская Т. А. Алгоритмизация и программирование : учебник для вузов / В. В. Трофимов, Т. А. Павловская ; под редакцией В. В. Трофимова. — Москва : Издательство Юрайт, 2020. — 137 с. — (Высшее образование). — Текст : непосредственный.
7. Швецкий М. В. Программирование: математическая логика : учебное пособие для среднего профессионального образования / М. В. Швецкий, М. В. Демидов, А. В. Голанова, И. А. Кудрявцева. — 2-е изд., перераб. и доп. — Москва : Издательство Юрайт, 2020. — 675 с. — (Профессиональное образование). — Текст : непосредственный.