Разработка программы для построения графика временной функции
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
СОДЕРЖАНИЕ
Условие задания
Введение
Выбор и обоснование методов решения
1.1 Понятие машинного и реального времени
1.2 Дискретизация времени
.3 Реализация временных задержек в программе
.4 Вычисление значения многочлена методом Горнера
Разработка схем алгоритмов, основной программы и подпрограмм
.1 Схемы алгоритмов подпрограмм
.2 Схема алгоритма основной программы
Построение графика временной функции с распечаткой результатов
Заключение
Список использованных источников
ВАРИАНТ №40
Составить схему алгоритма и программу для построения графика временной функции, работающую как в машинном, так и в реальном времени. Реальное время в диапазоне [t0 - tкон] формируется таймером в виде программного модуля с метками Тк, называемыми временем квантования. При вычислении функции использовать алгоритм Горнера (схему Горнера).
Функция:
где:
t0 = 0 с;
tкон = 5 с;
Tk = 0.25 с;
a - корень нелинейного уравнения которое необходимо решить методом Ньютона с точностью , при начальном значении корня, лежащего в диапазоне [0.54; 0.62];
b - наибольший по абсолютному значению корень системы уравнения:
,
при a1 = 3; b1 = 5; d1 = 7;
a1 = 4; b1 = 9; d1 = 5.
Коэффициенты:
k = 0; l = 1; m = cos 45; n = (l+m);
Введение
BASIC действительно универсален. Хотя BASIC (Beginners АН-Purpose Symbolic Code - универсальный символический код для начинающих) действительно является языком программирования для начинающих, одновременно со своими "старшими братьями", такими как СИ и ФОРТРАН, он развивается и совершенствуется. Авторы языка Джон Кемени и Томас Курц в 1975 году провели ревизию своего детища. В свете получивших широкое распространение принципов структурного программирования, они ввели в Бейсик структурные возможности, а спустя десять лет предприняли еще один, более существенный пересмотр языка, связанный с микрокомпьютерами. Сохранив все достоинства и простоту базовой версии, Д.Кемени и Т.Курц в содружестве с Американским институтом национальных стандартов (ANSI) разработали каноническую версию языка для микрокомпьютеров, на основе которой разработан транслятор современного Visual Basic.
1 Выбор и обоснование методов решения
.1 Понятие машинного и реального времени
Реализацию любой программы можно проводить по двум путям: либо в темпе быстродействия ЭВМ (с учётом быстродействия языка программирования), либо в реальном масштабе времени. При этом время задержки напрямую зависит от частоты процессора, и эта программа может наиболее объективно использоваться на той ЭВМ, для которой она была написана. Машинное время является относительным, т.к. зависит от быстродействия ЭВМ, от используемого языка, от сложности алгоритма и т.д.
Моделирование в реальном времени дает возможность оценивать эффективность алгоритмов для работы в реальных системах.
.2 Дискретизация времени
При исследовании блоков и систем во временной области на ЭВМ, в частности микроЭВМ, непрерывные процессы заменяются на дискретные. При этом временной интервал L представляется как совокупность дискретных интервалов:
,
где Tk - шаг приращения времени или период квантования по времени непрерывной функции; n - количество шагов или квантов. Количество квантов выбирается не произвольно, а исходя из максимальной частоты процесса и допустимой погрешности при моделировании.
1.3 Реализация временных задержек в программе
Можно выделить два основных способа реализации временных задержек в программе. Первый - самый простой - состоит в том, чтобы прямо указать программе, сделать паузу (например, оператором SLEEP (n) - приостанавливает работу программы на n секунд или до нажатия любой клавиши. Если n=0 или не указано, произойдет остановка программы до нажатия любой клавиши. Второй способ - реализация таймера. Таймер задает метки времени n и может работать либо в реальном времени, либо в темпе компьютера.
.4 Вычисление значения многочлена методом Горнера
Вычисление значения многочлена с фиксированной старшей степенью аргумента может быть организовано с помощью функции пользователя. Но этот способ нецелесообразен в случаях, когда многочлен имеет много слагаемых или старшая степень не является фиксированной. Следовательно можно воспользоваться алгоритмом Горнера. Алгоритм Горнера представляет собой рекурентную формулу для вычисления значений полиномов любой степени.
Идея Горнера состоит в следующем:
Общий вид полинома:
график временная функция программа
Y = anxn + an-1xn-1 + …. + a1x +a0= ( a1x +a2 )x+a3)x+a4)x+…)x + an+1
Отсюда следует алгоритм:
Y1=a1
Y2=a1 * X+a2
Y3=y2 * X+a3
и т.д.
Для вычисления используется формула:
Y=y*x + A(i)
2 Разработка схем алгоритмов, основной программы и подпрограмм
.1 Описание подпрограмм
.1.1 Подпрограмма решения нелинейного уравнения
Схема алгоритма подпрограммы решения нелинейного уравнения , решенного методом Ньютона изображена на рисунке 2.1.1.
Рисунок 2.1.1-Подпрограмма решения нелинейного уравнения
2.1.2 Подпрограмма решения системы уравнения
Схема алгоритма подпрограммы решения системы уравнения изображена на рисунке 2.1.2.
Рисунок 2.1.2-Подпрограмма решения квадратного уравнения
.1.3 Подпрограмма вычисления значения многочлена
Схема алгор?/p>