Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Otchet_po_laboratornym_rabotam_v_srede_programm...doc
Скачиваний:
1
Добавлен:
27.09.2019
Размер:
838.66 Кб
Скачать

1) Задание.

2) Ход работы.

function f=f6_1(x)

f=[];

if ((x>=-3) & (x<=-1))

f=-1;

elseif ((x>-1) & (x<=1))

f=x;

elseif ((x>1) & (x<=3))

f=exp(1-x);

else

disp('<x> out of range!!!')

end

x=-10;

f=f6_1(x)

<x> out of range!!!

f =

[]

x=-3;

f=f6_1(x)

f =

-1

x=-2;

f=f6_1(x)

f =

-1

x=-1;

f=f6_1(x)

f =

-1

x=-0.5;

f=f6_1(x)

f =

-0.5000

x=0.5;

f=f6_1(x)

f =

0.5000

x=1;

f=f6_1(x)

f =

1

x=2;

f=f6_1(x)

f =

0.3679

x=3;

f=f6_1(x)

f =

0.1353

x=10;

f=f6_1(x)

<x> out of range!!!

f =

[]

Лабораторная работа №7.1

Вычисление таблицы значений функции

  1. Задание.

  1. Ход работы.

function f=f6_1(x)

f=[];

if ((x>=-3) & (x<=-1))

f=-1;

elseif ((x>-1) & (x<=1))

f=x;

elseif ((x>1) & (x<=3))

f=exp(1-x);

else

disp('<x> out of range!!!')

end

function f7_1(a,b,n)

h=(b-a)/n;

for x=a:h:b

fprintf('%2s%4.2f%2s%15.8e\n','f(',x,')=',f6_1(x))

end

a=-3;b=3;n=10;

f7_1(a,b,n)

f(-3.00)=-1.00000000e+000

f(-2.40)=-1.00000000e+000

f(-1.80)=-1.00000000e+000

f(-1.20)=-1.00000000e+000

f(-0.60)=-6.00000000e-001

f(0.00)=0.00000000e+000

f(0.60)=6.00000000e-001

f(1.20)=8.18730753e-001

f(1.80)=4.49328964e-001

f(2.40)=2.46596964e-001

f(3.00)=1.35335283e-001

Лабораторная работа №8.1

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

  1. Задание.

  1. Ход работы.

function s=f8_1(x,N)

s=0;

for k=0:N

s=s+(x^(2*k+1))/factorial(2*k+1);

end

st=sinh(x)

x=2;N=5;

s=f8_1(x,N)

st =

3.6269

s =

3.6269

x=2;N=3;

s=f8_1(x,N)

st =

3.6269

s =

3.6254

x=2;N=2;

s=f8_1(x,N)

st =

3.6269

s =

3.6000

x=2;N=1;

s=f8_1(x,N)

st =

3.6269

s =

3.3333

Лабораторная работа №9.1

Программирование циклических процессов

с неизвестным числом повторений.

  1. Задание

, используя условие его окончания .

  1. Ход работы

function [S,k]=f9_1(x,e)

k=0;

a=x;

S=a;

while(abs(a)>= e*abs(S))

k=k+1;

a=(x^(2*k+1))/factorial(2*k+1);

S=S+a;

end

St=sinh(x)

x=2;

e=1.e-1;

[S,k]=f9_1(x,e)

St =

3.6269

S =

3.6000

k =

2

e=1.e-3;

[S,k]=f9_1(x,e)

St =

3.6269

S =

3.6268

k =

4

e=1.e-6;

[S,k]=f9_1(x,e)

St =

3.6269

S =

3.6269

k =

6

Лабораторная работа №10.1

Решение нелинейного уравнения методом половинного деления

и с помощью функции fzero.

Сравнить результаты.

  1. Задание

Получение решения в пакете MathCad.

Получение решения в пакете MatLab.

  1. Ход работы

function f10_1

a=input('enter <a>: ');

b=input('enter <b>: ');

e=input('enter <e>: ');

xk_b=bisection(a,b,e)

f_xk_b=f(xk_b)

xk_z=fzero(@f,b)

f_xk_z=f(xk_z)

function x=bisection(a,b,e)

if(sign(f(a)*f(b)) >= 0)

error('not valid input data!!!')

end

while((b-a) > e)

c=(a+b)/2;

if(sign(f(a)) == sign(f(c)))

a=c;

else

b=c;

end

end

x=a;

function y=f(x)

y=3*sin(x-4)-x^5+5;

f10_1

enter <a>: 1

enter <b>: 1.5

enter <e>: 1.e-6

xk_b =

1.300289154052734e+000

f_xk_b =

1.506276599183565e-005

xk_z =

1.300290039833405e+000

f_xk_z =

0

Лабораторная работа №11.1

Вычисление определённого интеграла с помощью

квадратурных формул средних прямоугольников, трапеций и

с помощью встроенных функций trapz и quad.

Сравнить результаты.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]