курсач 11 вариант / курсач
.docxМИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра МНЭ
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА к курсовой работе
по дисциплине «Информационные технологии»
Студент гр. 9282 |
|
Мелконян Г.Э. |
Преподаватель |
|
Пермяков Н.В. |
Санкт-Петербург
2019
СОДЕРЖАНИЕ
Стр.
Постановка задачи
1). Даны две функции: y1=sin(x) и y2=log10(x-2). Написать программу на языке MatLab для определения разницы между максимальным и минимальным корнем уравнения y1=y2 на интервале значений x = (4;8].
Решение находили с помощью перебора циклом while. Полученные корни заносили массив и из полученного массива выбирали максимальный и минимальный корень.
2). Дополнительное задание: найти площадь фигуры, которая ограниченная данными функциями на заданном интервале.
Воспользовавшись тем, что площадь фигуры – это интеграл разности двух функций, нашли с помощью цикла while значения площади всех частей графика двух функций и занесли полученные данные в массив. Сложив полученные значения из каждой ячейки получили общую площадь фигуры, ограниченную заданными графиками.
Алгоритм решения
Текст программы
%% даны две функции y1=lg(x-2)и y2=sin(x) найти точки персечения
%на интервале от 4 до 8, так же найти разницу между максимальным и
%минимальным значением икс.
clc
clear
eps=input('точность eps:(лучше всего - 0.01) ');%шаг определения корня
a=4; %задается область значений x
b=8;
o=1;
m=[1:o];%задается массив переменных, кол-во строк - 1, кол-во стобов равно
% кол-ву решений уравнения y1=y2
x=a;
%цикл для определения всех точек пересечения и добавления их в массив
while x<=b
y1=log10(x-2)-sin(x);
y2=log10(x-2+eps)-sin(x+eps);
if y1*y2<0 %если произведение y1 и y2 меньше нуля, то корень лежит в oтрезке между x и x+eps
coren=x+eps/2;%с определенной погрешностью определяем корень
disp('получаем корни уравнения равные')
disp(coren)
m(1,o)=coren;%решение уравнения записывается в массив
o=o+1;
end
x=x+eps; %двигаемся дальше по координатной прямой
end
%кол-во корней равно количеству столбцов с заполненными ячейками массива m
do=o-1;
disp('кол-во корней =')
disp(do)
%нахождения максимального и минимального корня из массива
a1=max(m);
a2=min(m);
%находим искому разницу
dx=a1-a2;
disp('разница максимального и минимального значения x =')
disp(dx)
Листинг результатов.
Начальные данные заданы в начале программы. Данная программа анализирует две функции, находит корни, которые заносятся в массив, и в дальнейшем из массива выбирается максимальный и минимальный корень.
Диаграммы
Проверка в Excel
Тестовые результаты в Excel подтвердили то, что программа работает правильно. Как видно из графика, построенного в Excel, на интервале от (4, 8] имеет место лишь одно пересечение графиков, а значит только один корень уравнения y1=y2, который равен 7.065 (найден при помощи функции Поиск решения), из чего следует, что разность между максимальным и минимальным корнями будет равна 0.
Заключение
В ходе проделанной работы было определено, что на интервале от [4, 8) существует лишь один корень уравнения y1=y2 – это x = 7.065 (определен с точностью до тысячных).
Тестовые вычисления, выполненные в Excel при помощи функции поиск решения, дали такой же результат.
Доп.задание: в массиве с площадями оказалось 2 значения, просуммировав их получили искомое значение SS=3.1598