инфа второй сем / курсач20вариант / курсовая
.docxМИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
РОССИЙСКОЙ ФЕДЕРАЦИИ
Санкт-Петербургский государственный электротехнический
университет "ЛЭТИ"
___________________________________________________________________
Факультет электроники
Кафедра радиотехнической электроники
"Применение программного продукта MATLAB для решения
математической задачи"
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к курсовой работе по дисциплине "Информационные технологии"
Преподаватель: Платонов Р.А.
Студентка гр. 7207 Скалюнова М.В.
Санкт-Петербург
2018
1.Постановка задачи и метод решения
Вариант 20.
Даны две функции: y1(x)=tg(x) и y2(x)=lg(x-2).
Написать программу на языке MatLab для определения наименьшего значения функции, которая будет иметь наибольшее значение в интервале x [9; 10].
Метод решения: на интервале [9;10] определяем наибольшую функцию и с помощью встроенной функции min ищем у наибольшей функции , т.е. минимальное значение этой функции.
2. Алгоритм решения.
x=9:0.01:10; y1=tan(x); y2=log10(x-2); m1=min(y1); m2=min(y2);
[m, k] = max([min(y1) min(y2)]);
Да нет
disp(m)
disp(k)
Вывод результатов:
disp('Минимальное значение'); (выводим на экран сначала min значение наибольшей функции , затем наибольшую функцию)
disp(m);
disp('Наибольшая функция');
disp (k);
Вывод графика
x=9:0.01:10;
y1=tan(x);
y2=log10(x-2);
plot(x,y1,x,y2)
3
3. Текст программы
Даны две функции:
y1(x)=tg(x) и y2(x)=log10(x-2).
Написать программу на языке MatLab для определения
наименьшего значения функции, которая будет иметь наибольшее значение в интервале x [9; 10].
clear all;
clc;(очищают экран и помещают курсор в левый верхний угол окна командного режима работы)
close all;
x=9:0.01:10; (задаем шаг)
y1=tan(x);
y2=log10(x-2);
plot (x,y1,x,y2); (создаем график, изображающий одновременно 2 функции)
ylim([-3;2]); (ограничиваем заданный график)
m1=min(y1); (находим минимумы функций)
m2=min(y2);
[m, k] = max([min(y1) min(y2)]); (Здесь мы получаем матрицу строку, путем приведения к ней значения функции max() от другой матрицы строки, состоящей из минимумов двух функций.
В итоге, элемент m принимает значение минимума меньшей функции, а элемент k - индекс этого числа в строке-аргументе.
Зная k, мы сразу же можем сказать, какая из двух функций оказалась наименьшей)
if k==1, k = 'tan(x)';
else k = 'log10(x-2);
end
disp('Минимальное значение'); (выводим на экран сначала min значение наибольшей функции, затем наибольшую функцию)
disp(m);
disp('Наибольшая функция');
disp (k);
end.
4
4. Листинг результатов
Вывод ответа:
5. Диаграммы
Рис. 1. График построения соответствующих функций вида: y1(x)=tan(x) и y2(x)=log10(x-2)
5
Заключение:
-
Получили в результате, что y1(x)=log10(x-2) имеет меньшее значение на промежутке х [9,10] и это значение 0.8451.
-
Для поиска меньшего значения на промежутке удобнее использовать программу, написанную через цикл for.
6