Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ЛР1 / Modelirovanie_1

.docx
Скачиваний:
12
Добавлен:
26.06.2022
Размер:
562.39 Кб
Скачать

Никитиной Софии ИВТ-44

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

Для M-file:

Для командной строки:

1)

2)

1)

2)

3)

Для M-file:

На выходе:

1)

Ошибка, т.к. число столбцов в первом сомножителе (3) не соответствует числу строк во втором (2)

2)

3)

4)

5)

Проверим, чтобы определитель матрицы не был равен нулю:

Решаем:

1)

2)

3)

clear all

close all

clc

t = 0:pi/100:2*pi;

x0 = -3;

y0 = 2;

A = 5;

B = 4;

x = x0+A/2*sin(t);

y = y0+B/2*cos(t);

figure

hold on

grid on

plot(x,y, 'r', x0, y0, '*');

xlabel('x')

plot([6 -6], [0 0], 'k')

ylabel('y')

plot([0 0], [6 -6], 'k')

title ('(x_1+3)^2/(5^2)+(y_1-2)^2/(4^2) = 0')

axis equal

axis square

figure

hold on

grid on

ezplot('(x2+3)^2/(5^2)+(y2-2)^2/(4^2)');

plot(x,y, x0, y0, '*');

xlabel('x')

plot([6 -6], [0 0], 'k')

ylabel('y')

plot([0 0], [6 -6], 'k')

axis equal

axis square

4)

График можно отредактировать также воспользовавшись кодом, как в п.3 (title, plot(‘’)).

1)

clear all

close all

clc

t = -5:0.01:5;

x = sin(t);

y = 2*cos(2*t);

figure

polar(x,y);

title ('y = f(x)')

figure

hold on

grid on

plot(x,y);

xlabel('x')

plot([3 -3], [0 0], 'k')

ylabel('y')

plot([0 0], [3 -3], 'k')

title ('y = f(x)')

axis equal

a xis square

2)

clear all

close all

clc

[x, y] = meshgrid(0:.1:3, 0:.1:3);

z = (x.^2 + y.^2)./(5.*x.*y) + log(x+y);

hold on

grid on

mesh(z);

xlabel('x')

ylabel('y')

zlabel('z')

title ('z = f(x,y)')

1)

IF

Для M-file:

if (a==1)

disp('True')

else

disp('False')

end

SWITCH

Для M-file:

switch a

case 0

disp('Zero')

case 1

disp('One')

otherwise

disp('None')

end

FOR

Для M-file:

a = 3;

display = 0;

for count = 1:a

display = display + 1;

disp(display)

end

WHILE

Для M-file:

counter = 1;

while counter <= 3

disp(counter)

counter = counter + 1;

end

2)

Для M-file:

function param_o = Untitled(param_i)

if param_i < 0

disp('ERROR: The number is negative')

else

param_o = factorial(param_i);

end

3)

function f = Untitled()

prompt = 'Введите номер варианта ';

N = input(prompt);

prompt = 'Введите точность ';

eps = input(prompt);

sum = 0;

n = 1;

while abs(1/n^(N+1)) >= eps

sum = sum + 1/n^(N+1);

n = n + 1;

end

f = sum;

end