Вычисление конечных сумм




Варианты заданий

5. 6.
7. 8.
9. 10.
11. 12.
13. 14.
15. 16.
17. 18.
19. 20.
21. 22.
23. 24.
25. 26.
27. 28.
29. 30.
31. 32.
33. 34.
35. 36.

 

Типы М-файлов.

М-файлы бывают двух типов. Вычисления в среде MATLAB возможны в текстовых файлах с расширением.m:

1. файл-программы (script m-files) – последовательность команд, оформленная в виде файла с именем и расширением.m.

2. файл-функции (function m-files) – файл, в котором описываются функции, определяемые пользователем. Файл-функции могут принимать исходные данные в виде набора входных параметров и выдавать результаты. Файл-функция всегда должна состоять из следующих частей:

Øзаголовок функции: включает объявление function, уникальное имя функции, список входных и выходных параметров;

Øтело функции: состоит из инструкций MATLAB.

Для создания файл-функции вызывается редактор М-файлов. После ввода текст файл-функции сохраняют в текущем рабочем каталоге, при этом в соответствующем окне автоматически появляются имя и тип файл-функции (содержимое этих полей менять нельзя). Файл-функция может использоваться как в командном режиме, так и вызываться из других файл-программ и файл-функций. При ее вызове указываются все входные и выходные параметры.

Структура функции с несколькими выходными параметрами имеет вид:

function[y1,y2,…,yn]=имя_функции(список входных параметров)

% комментарий

y1 = выражение

y2 = выражение

...

yn = выражение

Вызов такой функции выполняется следующим образом:

[y1,y2,…,yn]=имя_функции(список входных параметров)

Иногда при написании файл-функций требуется создание так называемых внутренних функций, в которых выполняются промежуточные вычисления. Они записываются в теле основных функций и имеют аналогичный им синтаксис. Это могут быть подфункции и встроенные функции. Они являются локальными и могут выполняться только в пределах основной файл-функции. Файл-функция может включать одну или несколько таких функций. Их отличие заключается в следующих деталях.

Подфункция имеет структуру основной файл-функции и располагается после нее. Кроме того, данные из основной файл-функции, не являющиеся входящими параметрами подфункции, не доступны в теле подфункции, либо должны быть объявлены глобальными как в основной, так и в подфункции.

Встроенная функция имеет структуру основной файл-функции, но в этом случае и основная и встроенная функция должны иметь в качестве последнего оператора оператор end. При этом встроенная функция располагается в любом месте основной функции. Кроме того, данные из основной файл-функции доступны в теле встроенной функции.

 

Пример 1. Табулирование функции на отрезке [ , ] с последующим построением графика, а также выдачей максимального и минимального значения функции и точек, где эти значения достигаются.

, ,

Пример текста М-файла

function tab31

xn=input('введите начальное значение xn=');

xk=input('введите конечное значение xk=');

n=input('введите значение n=');

h=(xk-xn)/n;

x=xn:h:xk;

for i=1:n+1

y(i)=f(x(i));

End

[fmin,imin]=min(y);

[fmax,imax]=max(y);

fprintf('\nfmin=%8.2f в точке xmin=%6.2f\nfmax=%8.2f в точке xmax=%6.2f\n',...

fmin,x(imin),fmax,x(imax))

plot(x,y),grid on

% подфункция

function v=f(x)

if x<=-1

v=exp(x);

elseif abs(x)<1

v=1/(1-abs(x));

else

v=1/x;

end

 

Результаты счета

введите начальное значение xn=-3

введите конечное значение xk=3

введите значение n=20

 

fmin= 0.05 в точке xmin= -3.00

fmax= 10.00 в точке xmax= -0.90

 

 

Пример 2. Построение графика функции на отрезке [ , ] без табулирования.

,

Пример текста М-файла

function tab31plot

xn=input('введите начальное значение xn=');

xk=input('введите конечное значение xk=');

fplot(@f,[xn,xk]),grid on

% подфункция

function v=f(x)

if x<=-1

v=exp(x);

elseif abs(x)<1

v=1/(1-abs(x));

else

v=1/x;

end

 

Результаты счета

 

Точка минимума функции

 

 

 

Точка максимума функции

 

Пример 3. Построение графика функции на отрезке [ , ] без табулирования.

,

 

Пример текста М-файла

function f30plot

xn=-3*pi;

xk=3*pi;

fplot(@f,[xn,xk]),grid on

% подфункция

function v=f(x)

s=sin(x);

if s>0

v=s+atan(1/s);

else

v=x*exp(s);

end

 

Результаты счета

 

 

Точка минимума функции

 

 

 

Точка максимума функции

 

 

 

Нулевая точка функции:f(x)=0

 

Меню: T ools ® D ata Statistics

 

 

 

 

Поставить флажки

 

 

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-11-10 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: