На самом деле у меня есть две пересекающиеся окружности, как указано на рисункеНайти площадь двух пересекающихся окружностей с использованием метода Монте-Карло
я хочу найти площадь каждой части в отдельности с использованием метода Монте-Карло в Matlab.
Код не рисует прямоугольник или круги правильно, поэтому Я предполагаю, что неправильно, это мой расчет для x и y, и я не очень хорошо разбираюсь в уравнениях геометрии для его решения, поэтому мне нужна помощь в уравнения.
n=1000;
%supposing that a rectangle will contain both circles so :
% the mid point of the distance between 2 circles will be (0,6)
% then by adding the radius of the left and right circles the total distance
% will be 27 , 11 from the left and 16 from the right
% width of rectangle = 24
x=27.*rand(n-1)-11;
y=24.*rand(n-1)+2;
count=0;
for i=1:n
if((x(i))^2+(y(i))^2<=25 && (x(i))^2+(y(i)-12)^2<=100)
count=count+1;
figure(2);
plot(x(i),y(i),'b+')
hold on
elseif(~(x(i))^2+(y(i))^2<=25 &&(x(i))^2+(y(i)-12)^2<=100)
figure(2);
plot(x(i),y(i),'y+')
hold on
else
figure(2);
plot(x(i),y(i),'r+')
end
end
Что именно ваш вопрос? Смутное * «Мне нужна помощь» * не объясняет, чего вы хотите. Опишите, что делает код, как правильный, так и неправильный. Пожалуйста, опишите, что вы хотите. Страницы [help] дают много советов о том, как написать хороший вопрос. См. Также [mcve]. – AdrianHHH
«Мне нужна помощь об этом» была о геометрических уравнениях, в любом случае я ее отредактировал, спасибо за уведомление – Suzy