如何在matlab中写“圆上任意两点的中点”的程序代码??求指点呀!!! - 爱问答

(爱问答)

如何在matlab中写“圆上任意两点的中点”的程序代码??求指点呀!!!

知道怎么用蒙特卡洛仿真求圆的面积吗?下面有一个pudn上的代码,使用蒙特卡洛方法求圆心在原点,半径为1的圆的面积。你可以用类似的方法解决你的问题,只要把条件改成落点同时在三个圆里面就行了
sita=0:0.01:2*pi;
x=sin(sita);
y=cos(sita);% 计算半径为1的圆周上的点,以便作出圆周观察
m=0; % 在圆内在落点计数器
x1=2*rand(1000,1)-1;% 产生均匀分布于[-1, +1]直接的两个独立随机数x1,y1
y1=2*rand(1000,1)-1;
N=1000; % 设置试验次数
for n=1:N % 循环进行重复试验并统计
p1=x1(1:n);
q1=y1(1:n);
if (x1(n)*x1(n)+y1(n)*y1(n))<1 % 计算落点到坐标原点的距离,判别落点是否在圆内
m=m+1; % 如果落入圆中,计数器加1
end
plot(p1,q1,'.',x,y,'-k',[-1 -1 1 1 -1],[-1 1 1 -1 -1],'-k');
axis equal; % 坐标纵横比例相同
axis([-2 2 -2 2]); % 固定坐标范围
text(-1,-1.2,['试验总次数 n=',num2str(n)]);% 显示试验结果
text(-1,-1.4,['落入圆中数 m=',num2str(m)]);
text(-1,-1.6,['近似圆面积 S_c=',num2str(m/n*4)]);
set(gcf,'DoubleBuffer','on'); % 双缓冲避免作图闪烁
drawnow; % 显示结果
end

相关标签:matlab

下一篇:电脑使用正常但隔几分钟就无信号黑屏拔掉数据线后,重新插好又能正常使用,几分钟后又会无信号

上一篇:整合13号升级档是什么意思,我玩的是看火人,是要激活的吗,怎么激活(急急急!在线等111))

热门标签:
excel 网盘 破解 word dll
最新更新:
微软重新评估新的Outlook的使用时机 联想推出搭载联发科Helio G80芯片组的Tab M9平板 英特尔创新大赛时间确定! 微软Edge浏览器在稳定渠道中推出Workspaces功能 英伟达RTX4060TiGPU推出MaxSun动漫主题! 谷歌地图为用户提供了街景服务! GameSir 在T4 Kaleid中推出了一款出色的控制器! 微软开始在Windows 11 中测试其画图应用程序的新深色模式! LG电子推出全球首款无线OLED电视 英伟达人工智能芯片崭露头角! Steam Deck可以玩什么游戏-Steam Deck价格限时优惠 雷蛇推出CobraPro鼠标 Kindle电子阅读器可以访问谷歌商店吗 Windows10如何加入组策略 window10图片查看器怎么没有了?