![]()
|
|||||||||||||||||
1 ПОСТАНОВКА ЗАДАЧИСтр 1 из 3Следующая ⇒
ГОУ ВПО «ДОНЕЦКИЙ НАЦИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
«Электропривод и автоматизация промышленных установок» (полное название кафедры)
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА к курсовой работе по дисциплине “Современные пакеты прикладных программ” на тему “Файловый ввод и вывод в языке С/С++” Вариант № 19
Студента 2-го курса группы ЭАПУ направление подготовки 13. 03. 02 профиль Электропривод и автоматика Жука О. Е.
Руководитель: старший преподаватель Мариничев В. Ю. (должность, уч. звание, науч. степень, Ф. И. О)
Защищена с оценкой: Национальная шкала _______________ Количество баллов ________ ECTS __
Члены комиссии __________ ________ __________ ________ (подпись) (Ф. И. О)
Донецк – 2021 ГОУ ВПО «ДОНЕЦКИЙ НАЦИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
Кафедра: ЭАПУ Дисциплина: Современные пакеты прикладных программ Профиль: Электропривод и автоматика Курс: 2-й Группа: ЭАПУ Семестр: 1-й
ЗАДАНИЕ на курсовую работу студента Жука О. Е. (Ф. И. О. студента) 1. Тема: Файловый ввод и вывод в языке С/С++ 2. Cрок сдачи студентом законченной работы: ______________________________ 3. Исходные данные к работе: ____________________________________________ ________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________ 4. Содержание расчетно-пояснительной записки (перечень вопросов, которые подлежат разработке): __________________________________________________ ____________________________________________________________________________________________________________________________________________ ______________________________________________________________________ 5. Перечень графического материала (с точным обозначением обязательных чертежей): ____________________________________________________________ ____________________________________________________________________________________________________________________________________________ 6. Дата выдачи задания: _________________________________________________
РЕФЕРАТ
Пояснительная записка к курсовой работе: 39 стр., 21 рис., 1 табл., 6 источников, 3 приложения
Цель работы – разработать программу на языке C, выполняющую расчет и построение графиков функций в заданном диапазоне в консольном приложении. В результате выполнения курсовой работы была разработана программа, которая рассчитывает значения функций, заносит их в массив, выполняет сортировку массивов, вычисляет среднее арифметическое, находит минимальный и максимальный элементы массива значений функций, а также строит графики функций в заданном диапазоне в консольном приложении. Составлены блок-схемы алгоритма программы и приведено их описание.
ФУНКЦИЯ, ТЕКСТОВЫЙ ФАЙЛ, МАССИВЫ, ГРАФИК, БЛОК-СХЕМА АЛГОРИТМА, ПРОГРАММА С
СОДЕРЖАНИЕ
ВВЕДЕНИЕ. 5 1 ПОСТАНОВКА ЗАДАЧИ.. 6 2 ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ.. 8 3 РАЗРАБОТКА АЛГОРИТМОВ.. 10 4 РЕЗУЛЬТАТЫ РАБОТЫ.. 15 ЗАКЛЮЧЕНИЕ. 19 СПИСОК ЛИТЕРАТУРЫ.. 20 ПРИЛОЖЕНИЕ А Перечень замечаний нормоконтролера. 21 ПРИЛОЖЕНИЕ Б Листинг программы.. 22 ПРИЛОЖЕНИЕ В Блок-схемы алгоритмов. 34
ВВЕДЕНИЕ
Язык C является универсальным языком системного программирования с компактным способом записи выражений, современными механизмами управления структурами данных и богатым набором операторов. Среди преимуществ языка C следует отметить переносимость программ на компьютеры различной архитектуры и из одной операционной системы в другую, лаконичность записи алгоритмов, логическую стройность программ, а также возможность получить программный код, сравнимый по скорости выполнения с программами, написанными на языке ассемблера. Язык C может использоваться для написания больших вычислительных программ, обработки текстов, баз данных и программирования микроконтроллеров. В данной работе на основе полученных знаний по программированию на языке C будут изучены способы построения графиков, а также закреплены навыки работы с массивами и текстовыми файлами, что особенно важно при написании программ для микроконтроллеров и систем управления современными электроприводами.
1 ПОСТАНОВКА ЗАДАЧИ
1. Для заданных в таблице 1. 1 функций рассчитать значения на интервале
Таблица 1. 1 – Исходные данные
2. Произвести чтение данных из файла tablica. txt и построить графики функций 3. Из файла tablica. txt считать значения функции 4. Из файла tablica. txt считать значения функции 5. Из файла tablica. txt считать значения функции 6. Считать одномерные массивы из файлов: function_1. txt, function_2. txt, function_3. txt, а также значения аргумента
Полученную матрицу записать в текстовый файл matrica. txt.
2 ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
2. 1 Файлы Файл – это именованный объект, хранящий данные на каком-либо носителе. Для работы с файлом используется специальная переменная, которая называется указателемна файл. Это адрес блока данных в памяти, в котором хранится вся информация об открытом файле. Объявляется указатель на файл так:
FILE *fp;
2. 2 Процедуры и функции Процедура – это вспомогательная программа (подпрограмма), предназначенная для выполнения каких-либо действий, которые встречаются в нескольких местах программы. Она состоит из заголовка, после которого внутри фигурных скобок записывают тело процедуры – те команды, которые выполняются при вызове:
void имя процедуры (список параметров процедуры) { тело процедуры }
Параметры – это дополнительные данные для работы процедуры. Параметры иногда называют аргументами процедуры. Для каждого параметра отдельно указывается его тип (int, float, char). Для досрочного выхода из процедуры используется оператор return, при его выполнении работа процедуры заканчивается. Функция – это вспомогательная программа (подпрограмма), предназначенная для получения некоторого объекта-результата (например, числа). Функции, как и процедуры, предназначены для выполнения одинаковых операций в разных частях программы. Они имеют одно существенное отличие: задача функции – вычислить и вернуть в вызывающую программу значение-результат. Функция описывается следующим образом:
тип возвращаемого значения имя функции (список параметров функции) { тело функции }
2. 3 Работа в графическом режиме Для использования графических функций надо подключить заголовочный файл graphics. h. Для того чтобы открыть графическое окно, в котором можно строить графики необходимо использовать функцию initwindow. Эта функция открывает дополнительное окно, в котором можно рисовать. В скобках нужно указать ширину и высоту этого окна в пикселях. Для закрытия графического окна используется функция closegraph. Для построения отрезков сначала необходимо перевести указатель текущего положения в точку (x1, y1) командой moveto, а затем нарисовать отрезок в точку (x2, y2) командой lineto. После выполнения команды lineto курсор смещается в новую точку (x2, y2):
moveto (x1, y1); // курсор в точку (x1, y1) lineto (x2, y2); // отрезок в точку (x2, y2)
Функция outtextxy позволяет выводить текст в любом месте окна. Ей нужно задать координаты (x, y) левого верхнего угла текста. Цвет текста устанавливается с помощью функции setcolor
setcolor ( 9 ); outtextxy ( x, y, " f(x)" );
3 РАЗРАБОТКА АЛГОРИТМОВ
Блок-схема алгоритма главной функции основной программы (рис. В. 1) состоит из следующих блоков: 3 – Задание переменных аргумента 6 - 8 – Вычисление значений функций. 9 – Вывод аргументов и значений функций на экран. 11 – Вызов процедуры вывода аргументов и значений функций в файл. 12 – Задание массивов переменных аргументов 14 и 18 – Проверка на считывание значений из файла. 21 – Вывод массивов аргументов и значений функций на экран. 23 – Задание переменных 24 - 26 – Вызов процедур сортировки массивов. 27 - 28 – Вывод отсортированных массивов функций на экран. 29 – Задание переменных 30 - 32 – Вызов функций вычисления среднего арифметического. 33 – Вывод среднего арифметического на экран. 34 – Задание переменных 35 - 37 – Вызов функций нахождения максимальных элементов. 38 – Вывод максимальных элементов на экран. 39 – Задание переменных 40 - 42 – Вызов функций нахождения минимальных элементов. 43 – Вывод минимальных элементов на экран. 44 - 46 – Вызов процедур для записи в файл найденных величин функций. 47 – Вызов процедуры для вывода массивов аргументов и значений функций в виде матрицы в файл. 48 - 49 – Вывод массивов аргументов и значений функций в виде матрицы на экран.
Блок-схема алгоритма процедуры Tablica (рис. В. 2) состоит из следующих блоков: 2 – Открытие файла tablica. txt. 4 - 6 – Вычисление значений функций. 7 – Вывод аргументов и значений функций в файл. 8 – Закрытие файла tablica. txt.
Блок-схема алгоритма процедуры SortF1 (рис. В. 3) состоит из следующих блоков: 2 - 5 – Сортировка массива
Блок-схема алгоритма процедуры SortF2 (рис. В. 4) состоит из следующих блоков: 2 - 5 – Сортировка массива
Блок-схема алгоритма процедуры SortF3 (рис. В. 5) состоит из следующих блоков: 2 - 3 – Инверсия массива
Блок-схема алгоритма функции ArithmeticF1 (рис. В. 6) состоит из следующих блоков: 4 - 5 – Нахождение суммы 6 – Вычисление среднего арифметического 7 – Возвращение значения среднего арифметического.
Блок-схема алгоритма функции MaximumF1 (рис. В. 7) состоит из следующих блоков: 3 - 5 – Нахождение максимального элемента массива 6 – Возвращение значения максимального элемента.
Блок-схема алгоритма функции MinimumF1 (рис. В. 8) состоит из следующих блоков: 3 - 5 – Нахождение минимального элемента массива 6 – Возвращение значения минимального элемента.
Блок-схема алгоритма процедуры Function1 (рис. В. 9) состоит из следующих блоков: 2 – Открытие файла function_1. txt. 3 - 4 – Вывод массивов 5 – Вывод 6 – Закрытие файла function_1. txt.
Блок-схема алгоритма процедуры Matrica (рис. В. 10) состоит из следующих блоков: 2 – Открытие файла tablica. txt. 3 - 4 – Ввод массива аргументов 5 – Закрытие файла tablica. txt. 6 – Открытие файла function_1. txt. 7 - 8 – Ввод массива функции 9 – Закрытие файла function_1. txt. 10 – Открытие файла function_2. txt. 11 - 12 – Ввод массива функции 13 – Закрытие файла function_2. txt. 14 – Открытие файла function_3. txt. 15 - 16 – Ввод массива функции 17 – Закрытие файла function_3. txt. 18 – Открытие файла matrica. txt. 19 - 20 – Вывод массивов аргументов 22 – Закрытие файла matrica. txt.
Блок-схема алгоритма главной функции графической программы (рис. В. 11) состоит из следующих блоков: 2 – Задание массивов переменных аргументов 3 – Создание окна разрешением 800 4 – Вызов процедуры Axes. 5 – Вызов процедуры GraphicFunctions. 6 – Создание окна разрешением 800 7 – Вызов процедуры Axes. 8 – Вызов процедуры GraphicF1. 9 – Создание окна разрешением 800 10 – Вызов процедуры Axes. 11 – Вызов процедуры GraphicF2. 12 – Создание окна разрешением 800 13 – Вызов процедуры Axes. 14 – Вызов процедуры GraphicF3.
Блок-схема алгоритма функции ScreenX (рис. В. 12) состоит из следующих блоков: 2 – Преобразование в экранные координаты по оси
Блок-схема алгоритма функции ScreenY (рис. В. 13) состоит из следующих блоков: 2 – Преобразование в экранные координаты по оси
Блок-схема алгоритма процедуры Axes (рис. В. 14) состоит из следующих блоков: 2 – Задание переменных 3 – Построение координатных осей. 4 - 11 – Построение точек и делений на координатной осях, вывод надписей.
Блок-схема алгоритма процедуры GraphicFunctions (рис. В. 15) состоит из следующих блоков: 2 – Открытие файла tablica. txt. 3 - 5 – Ввод массивов аргументов 7 - 9 – Построение графика функции 11 - 13 – Построение графика функции 15 - 17 – Построение графика функции 19 – Закрытие файла tablica. txt.
Блок-схема алгоритма процедуры GraphicF1 (рис. В. 16) состоит из следующих блоков: 2 – Открытие файла function. txt. 3 - 5 – Ввод массивов начальной функции 7 - 9 – Построение графика функции 11 - 13 – Построение графика функции 14 – Закрытие файла function. txt.
4 РЕЗУЛЬТАТЫ РАБОТЫ
Рисунок 4. 1 – График функций
Рисунок 4. 2 – График функций
Рисунок 4. 3 – График функций
Рисунок 4. 4 – График функций
Рисунок 4. 5 – Матрица результатов
ЗАКЛЮЧЕНИЕ
В ходе выполнения курсовой работы были получены навыки пользования графической библиотекой языка C, закреплены теоретические знания и практические навыки работы с текстовыми файлами, массивами, процедурами и функциями. Была составлена программа, которая вычисляет значения функций, среднее арифметическое, находит максимальные и минимальные элементы массивов и выполняет их сортировку, строит графики функций в координатных плоскостях. Программа производит вывод результата на экран и в текстовые файлы. Так же были составлены блок-схемы алгоритмов функций и процедур. Можем сделать вывод, что использование языков программирования для вычисления функций и построения графиков существенно увеличивает точность и скорость нахождения результатов. Навыки по созданию алгоритмов и программ на языке C, полученные в ходе выполнения работы, могут использоваться в профессиональной деятельности современного инженера для решения более сложных задач.
|
|||||||||||||||||
|