点会随机分布在圆里面,落n=1000个点求落在矩形内除了深灰色区域的概率,一共操作r=5次,求概率平均值,散点图表示
1条回答 默认 最新
- 技术专家团-Joel 2021-10-27 21:38关注
你好同学,我是joel,比如说矩形的长为4,宽为2,圆半径为根号5,然后矩形中心跟圆中心重合:
clc;clear Probability = zeros(5,1); F1 = @(x,y) abs(x)<1 & abs(y)<1; F2 = @(x,y) (abs(x+1.5)<0.5 &abs(y-0.5)<0.5) | (abs(x+0.5)<0.5 &abs(y+0.5)<0.5); F3 = @(x,y) (abs(x-1.5)<0.5 &abs(y-0.5)<0.5) | (abs(x-0.5)<0.5 &abs(y+0.5)<0.5); F4 = @(x,y) (abs(x+1)<1 &abs(y+0.5)<0.5); F5 = @(x,y) (abs(x-1)<1 &abs(y+0.5)<0.5); F = {F1,F2,F3,F4,F5}; for i = 1:5 % 做5次实验 n = 1000; % 每次1000个点 x = zeros(n,1); y = zeros(n,1); count = 0; % 随机生成1000个点 while count<=n x0 = 2*sqrt(5)*rand(1) - sqrt(5); y0 = 2*sqrt(5)*rand(1) - sqrt(5); if(x0^2+y0^2<5) count = count + 1; x(count) = x0; y(count) = y0; end end figure(i);clf plot(x,y,'r.'); hold on; axis equal; q = ~ F{i}(x,y) & abs(x)<2 & abs(y)<1;% 不落在深灰色区域 plot(x(~q),y(~q),'b.') title(['第',num2str(i),'次实验']) Probability(i) = sum(q)/n; end fprintf('五次概率是:\n') disp(Probability) fprintf('平均概率是%f\n', mean(Probability))
结果输出(随机不唯一):
五次概率是: 0.269000000000000 0.387000000000000 0.370000000000000 0.383000000000000 0.376000000000000 平均概率是0.357000
有帮助望采纳哟
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥100 set_link_state
- ¥15 虚幻5 UE美术毛发渲染
- ¥15 CVRP 图论 物流运输优化
- ¥15 Tableau online 嵌入ppt失败
- ¥100 支付宝网页转账系统不识别账号
- ¥15 基于单片机的靶位控制系统
- ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
- ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
- ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
- ¥15 手机接入宽带网线,如何释放宽带全部速度