练习4.圆中四只鸭子在同一个半圆的概率——MATLAB-程序员宅基地

技术标签: matlab  概率论  

练习题

4.圆中四只鸭子在同一个半圆的概率
参考思路: 蒙特咔罗法 (进行N次试验,每次试验生成4个随机点,统计四点在同一个半圆的个数)相关知识点: input、if...else、for循环或while循环、rand、disp


%思路简单,易于实现,但是不优雅

N = 4;
total = 10000000;
count = 0;

for e = 1:total


    p1 = 2*[rand ,rand] - 1;
    p2 = 2*[rand ,rand] - 1;
    p3 = 2*[rand ,rand] - 1;
    p4 = 2*[rand ,rand] - 1;

    % p1作为第一点计算斜率,其余点计算截距
    k = p1(2) / p1(1);
    b1 = p2(2) - k*p2(1);
    b2 = p3(2) - k*p3(1);
    b3 = p4(2) - k*p4(1);

    if(b1 >= 0 & b2 >= 0 & b3>= 0) | (b1 <= 0 & b2 <= 0 & b3<= 0)
        count = count + 1;
        continue;
    end

    % p2作为第一点计算斜率,其余点计算截距
    k = p2(2) / p2(1);
    b1 = p1(2) - k*p1(1);
    b2 = p3(2) - k*p3(1);
    b3 = p4(2) - k*p4(1);
    if(b1 >= 0 & b2 >= 0 & b3>= 0) | (b1 <= 0 & b2 <= 0 & b3<= 0)
        count = count + 1;
        continue;
    end

    % p3作为第一点计算斜率,其余点计算截距
    k = p3(2) / p3(1);
    b1 = p2(2) - k*p2(1);
    b2 = p1(2) - k*p1(1);
    b3 = p4(2) - k*p4(1);
    if(b1 >= 0 & b2 >= 0 & b3>= 0) | (b1 <= 0 & b2 <= 0 & b3<= 0)
        count = count + 1;
        continue;
    end
    %p4作为第一点计算斜率,其余点计算截距
    k = p4(2) / p4(1);
    b1 = p2(2) - k*p2(1);
    b2 = p3(2) - k*p3(1);
    b3 = p1(2) - k*p1(1);
    if(b1 >= 0 & b2 >= 0 & b3>= 0) | (b1 <= 0 & b2 <= 0 & b3<= 0)
        count = count + 1;
    end
end

res= count / total;
disp(res);


% 化简的写法
N = 4;
total = 10000000;
count = 0;

for e = 1:total

    p1 = 2*[rand ,rand] - 1;
    p2 = 2*[rand ,rand] - 1;
    p3 = 2*[rand ,rand] - 1;
    p4 = 2*[rand ,rand] - 1;
    p =[p1;p2;p3;p4];%[4,2]

    % 依次让每个点作为第一个点,计算斜率
    for i = 1:N
        k = p(i,2) / p(i,1);
        b =[]; % 保存截距的矩阵
        % 计算截距
        for j = 1:N
            if j == i
                continue;
            else
                b = [ b, p(j,2) - k*p(j,1)];
            end
        end

        if (b(1) >= 0 & b(2) >= 0 & b(3) >= 0) | (b(1) <= 0 & b(2)<= 0 & b(3) <= 0)
            count = count + 1;
            break;
        end
    end

end

res= count / total;
disp(res);

2021年8月27日笔记

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_46427623/article/details/120051056

智能推荐

Docker部署Springboot项目连接到PostgreSQL_docker spring boot nacos连接postgresql数据库-程序员宅基地

文章浏览阅读1.3k次,点赞2次,收藏8次。docker小白的学习笔记,将自己之前做的Springboot项目做成容器进行试验,新建的PG数据库并没有导入数据,但是此过程可用。一:部署 postgresql镜像。1:搜索postgresql镜像。docker search postgres;2:拉取postgres镜像docker pull postgres3:创建本地目录映射到容..._docker spring boot nacos连接postgresql数据库

SSL协议详解-程序员宅基地

文章浏览阅读3.2k次。SSL)是一个安全协议,为基于TCPTransmission Control Protocol)的应用层协议提供安全连接,SSL介于TCP/IP协议栈第四层和第七层之间。主要提供私密性、完整性和身份验证;我们常见的就是 SSL为HTTP)协议提供安全连接。SSL协议是一种在两个机器之间提供安全通道的协议,它具有保护数据传输以及识别通信机器的功能。内的愈来愈多的浏览器支持SSL,SSL协议成为应用最广泛的安全协议之一。_ssl协议

深圳杯&东三省联赛数学建模挑战赛2024C题_使用gcc中不同版本的c++编译器编译附件1中的程序源代码[2],并对比使用默认编译选-程序员宅基地

文章浏览阅读473次,点赞5次,收藏9次。编译器版本的识别问题作为一种重要的工具,电子计算机自诞生以来,经历了极为快速的发展。区区百年的时间内,无论从体积、能耗、计算速度,还是应用能力等方面,电子计算机都出现了极为显著的变化。但要充分利用这一工具,必须使用能够被电子计算机解释执行的指令序列,即程序。最早可用于在电子计算机上执行的程序通常使用机器语言(machine language)编制。由于该类语言并不直观,故它极大地限制了电子计算机的普及。为克服这一困难,1957年诞生了第一个自动编译器,FORTRAN。此后,大量性能更高并支持近乎自然语言的编_使用gcc中不同版本的c++编译器编译附件1中的程序源代码[2],并对比使用默认编译选

vue中切换背景颜色。_vue 页面中为什么不能调用$contrast-color:#fff;-程序员宅基地

文章浏览阅读2k次。beforeCreate: function() { if (document.getElementsByClassName("page")[0]) document.getElementsByClassName("page")[0].className = "page1"; }, beforeDestroy: function() { document.get..._vue 页面中为什么不能调用$contrast-color:#fff;

DEEPXDE_神经网络deepxde求解偏微分方程-程序员宅基地

文章浏览阅读6.6k次,点赞17次,收藏66次。近年来在深度学习在计算机视觉,自然语言等方面得到了广泛应用,尽管在这些和相关领域取得了显著的成功,但深度学习还没有广泛应用于科学计算领域,然而,最近,通过深度学习求解偏微分方程(PDEs),如标准微分形式或积分形式,已经成为科学机器学习下一个潜在的新的子领域;特别的,用一种近似于PDE解的神经网络来代替传统的数值离散方法_神经网络deepxde求解偏微分方程

第九讲 python中的常量-链式赋值-解包赋值-内置数据类型-基本算术运算符-程序员宅基地

文章浏览阅读35次。Python不支持常量,即没有语法规则限制改变一个常量的值。我们只能约定常量的命名规则,以及在程序的逻辑上不对常量的值作出修改。

随便推点

bootstrap-fileinput后端接收不到数据_动态人像抓拍比对系统架构(前端抓拍+网络传输+后端视频解析)...-程序员宅基地

文章浏览阅读103次。动态人像抓拍比对系统由前端人脸抓拍采集子系统、网络传输子系统和后端解析管理子系统组成,实现对通行人脸信息的采集、传输、处理、分析与集中管理。系统中,前端人脸采集设备负责人脸图像的采集,接入服务器主要实现图片及信息的接收和转发功能,可为多种型号、多个厂家的抓拍机提供统一接入服务,接收到的抓拍图片存入云存储单元,并由人脸结构化分析服务器对抓拍的视频及图像进行建模以及黑名单实时比对报警,建模得到的人脸信..._bootstrap fileinput request.form.files获取不到

抖音seo矩阵系统源码搭建步骤分享_云索seo矩阵系统-程序员宅基地

文章浏览阅读115次。抖音SEO矩阵系统是基于抖音平台的搜索引擎优化技术的一种系统,其主要作用是通过一系列的技术手段,提高抖音视频的曝光和排名,使其获得更多的流量和粉丝。在本文中,我们将介绍抖音SEO矩阵系统的开发技术,包括系统设计、代码实现等方面。将源码上传到服务器上,并修改相关配置参数,包括数据库连接参数、域名配置、后台管理员账号等。从公开的代码托管网站上下载抖音SEO账号矩阵系统的源码,例如Github、码云等。将配置好的源码部署到Nginx服务器上,并设置网站的根目录指向源码的入口文件。并在网站上购买一个域名。_云索seo矩阵系统

国内顶级AI赛事再启程,第三届“中国人工智能大赛”聚焦算法治理、深度伪造与网络安全_第三届人工智能大赛网络安全赛道-程序员宅基地

文章浏览阅读813次。本届大赛赛题分为算法治理、深度伪造和网络安全三大方向的七大赛题,分别是:过滤算法鲁棒性、深度伪造视频检测、深度伪造视频生成方法识别、基于人工智能的音视频合成比赛、说话人无关的音频深度伪造检测识别、说话人相关的音频深度伪造检测识别、Webshell检测识别。编辑 | 宋慧出品 | CSDN近日,由国家互联网信息办公室、工业和信息化部、公安部、国家广播电视总局、厦门市人民政府联合主办,以“融新汇智,竞促发展”为主题的第三届中国人工智能大赛,在北京正式启动。大赛旨在推进国内人工智能技术创.._第三届人工智能大赛网络安全赛道

JDK环境变量配置成功,命令提示符(CMD)中,输入java、javac、java -version等没有反应_cmd中配置java环境后javac无反应-程序员宅基地

文章浏览阅读435次,点赞7次,收藏11次。看起来很不方便,原来若Path变量值是%开头的,它就会显示一个字符串(相当于每一行之间自动添加一个分号);想要显示列表的话,需要将变量值改为以盘符开始。双击环境变量里的path,然后把画圈的那两行移到最上边即可解决问题。但是这样的话,当年再次双击path时就会呈现如下界面,(全是小写)添加到最前面。如图所示即可解决问题。_cmd中配置java环境后javac无反应

CentOS 7 /lib64/libc.so.6: version `GLIBC_2.18' not found_centos 7 /lib64/libc/.so.6:version 'glibc_2.18' no-程序员宅基地

文章浏览阅读1.9k次。# 如果没有安装gcc的话# yum install gccwget http://ftp.gnu.org/gnu/glibc/glibc-2.18.tar.gztar zxf glibc-2.18.tar.gz cd glibc-2.18/mkdir buildcd build/../configure --prefix=/usrmake -j4make install..._centos 7 /lib64/libc/.so.6:version 'glibc_2.18' not found

php怎么在文字外面加方框,文字或字符加外框(方框、边框)的方法-程序员宅基地

文章浏览阅读2.3k次。文字或字符加外框(方框、边框)的方法2012.4.1512:50本文以方框“囗”里打上勾“√”或叉“×”的方法为例,来叙述文字或字符加外框的方法,下面介绍两种方法。方法一:其实质是“√”或“×”(或其它字符)加方框(更简捷确切说法的是文字加框线的应用)在文档中选取已输入好的欲加方框的“√”或“×”,单击“开始”选项卡→点击“段落”组上的“边框和底纹”按钮(与“*框线”等为同一下拉按钮组中)如下图箭..._怎么用php做一个方框里面有文字

推荐文章

热门文章

相关标签