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

матлаб лаб 1

.txt
Скачиваний:
6
Добавлен:
29.05.2017
Размер:
1.72 Кб
Скачать
clear
clc

% Вводим координаты точки
X0 = input('Введите координату точки X [-3 8]: ');
Y0 = input('Введите координату точки Y [-9 6]: ');
clf
% Рисуем фигуры
% 0. фон
A = [-10 -10 15 15 -10];
B = [-10 10 10 -10 -10];
patch(A,B,10,'EraseMode','xor')
hold on

% 1. Прямоугольник
a = 8; % ширина
b = 6; % длинна
x01 = 0; % координаты нижнего левого угла
y01 = -6;
X1 = [x01 x01 x01+a x01+a x01];
Y1 = [y01 y01+b y01+b y01 y01];
patch(X1,Y1,1,'EraseMode','xor')

% 2. Окружность
fi = 0:360; % угловой размер
x0 = 0; % координаты центра
y0 = 0;
r = 4; % радиус
X2 = x0 + r*cosd(fi);
Y2 = y0 + r*sind(fi);
patch(X2,Y2,2,'EraseMode','xor')

% 3. Прямая
X3=[-8:2:12];
Y3=X3-2;
plot(X3,Y3,'-','EraseMode','xor');

% подписываем области
text(-4,4,'\bf 1')
text(0,2,'\bf 2')
text(0.3,-0.8,'\bf 3','color',[0.6 0 0.6])
text(2,-1.5,'\bf 4','color',[0.6 0.3 0.8])
text(5,-4,'\bf 5','color',[0.8 0.5 0.3])
text(10,-7,'\bf 6','color',[0.8 0.5 0.3])
text(2.5,0.2,'\bf 7')
text(-0.8,-3,'\bf 8')

% Рисуем точку
plot(X0,Y0,'.','EraseMode','xor')
axis ([-10 10 -10 10])
axis equal
grid off


% Определяем область куда попала точка
N=0;
upline=(Y0>(X0-2));
inCir=((X0-x0)^2/r^2 + (Y0-y0)^2/r^2) <= 1;
inRtgl=(X0>=x01)&&(X0<=x01+a)&&(Y0>=y01)&&(Y0<=y01+b) ;
if (upline)&(~inCir)&(~inRtgl)
N=1;
elseif (upline)&(inCir)&(~inRtgl)
N=2;
elseif (upline)&(inCir)&(inRtgl)
N=3;
elseif (~upline)&&(inCir)&&(inRtgl)
N=4;
elseif (~upline)&&(~inCir)&&(inRtgl)
N=5;
elseif (~upline)&&(~inCir)&&(~inRtgl)
N=6;
elseif (~upline)&&(inCir)&&(~inRtgl)&&(X0>0)
N=7;
elseif (~upline)&&(inCir)&&(~inRtgl)&&(X0<0)
N=8;
end
disp(['Точка попала в область №', num2str(N)])