欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    课 计算圆周率π的近似值.ppt

    • 资源ID:6345291       资源大小:280KB        全文页数:28页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    课 计算圆周率π的近似值.ppt

    第24课 计算圆周率的近似值,1.用迭代法 求的近似值。2.用蒙特卡洛法求的值。3.设计一个算法计算1900年1月1日之后的任何一天是星期几?用VB程序实现这一算法。,复习引入,解析算法基本思想:用解析的方法找出表示问题的前提条件与所求结果之间关系的数学表达式,并通过表达式的计算来实现问题求解。在设计解析算法时,必须注意保证计算过程描述的正确性。,问题提出,圆周率=3.1415926有无穷多位,历史上 有很多科学家计算过这个数,古希腊学者阿基米德、我国杰出的数学家和天文学家祖冲之等,都提出许多求解的方法。公元前3世纪,古希腊学者阿基米德用圆内接或外切正多边形来近似代替圆,得到近似圆周率。到了公元5世纪,我国杰出的数学家和天文学家祖冲之在刘徽“割圆术”的基础上,使用更加精密的方法,精确到小数点后七位,求出结果在3.14159263.1415927间,这个的圆周率,在当时是非常了不起的成就。直到16世纪,才由中亚人计算出精确度为小数16位。随着计算机的出现,的计算取得了新的突破。利用计算机技术将值计算到小数点后20多亿位,甚至到上千亿位。,古今中外的数学家们计算的近似值主要有三类方法:1.利用“正多边形逼近”的方法。2.使用迭代法。可利用下列式子计算。3.使用蒙特卡洛法(Monte-Carlo method)。蒙特卡洛法是使用随机模拟实验结果进行统计来求得的近似值的方法。,实践活动,用级数公式,计算圆周率的近似值。,1.算法分析 按照级数公式,由若干项 求和得到,第1项为,第2项为,第3项为,第4项为 分析可得第n项为an与前一项an-1的关系是。,2.算法流程图:,变量n:输入计算的项数变量pi:计算的结果变量an:第n项的值,3.程序界面设计:,控件属性值的设置参考如下表:,4.分析算法流程,编写代码,Private Sub Command1_Click()Dim Pi As Double,an As Double Dim m,n As Integer n=Val(Text1.Text)Pi=1 an=1 For m=2 To n an=an*(m-1)/(2*m-1)计算第n项的值 Pi=Pi+an 进行累加Next Text2.Text=Str(Pi*2)End Sub,5.运行调试程序;,课堂练习,1.使用蒙特卡洛法求的近似值。利用求单位正方形与内接圆面积的比例关系来求得的近似值。单位圆的1/4面积是一个扇形,它是边长为1单位正方形的一部分。如果能求出扇形面积s1在正方形面积s中占的比例k=s1/s,它的值也等于/4,从而就计算得到的值。怎样求出扇形面积在正方形面积中占的比例k呢?蒙特卡洛法是在正方形中随机投入很多点,使所投的点落在正方形中每一个位置的机会相等。有些点将落在扇形内,而另一些点将会落在扇形外,落在扇形内的点数m与所投点的总数n之间比m/n即为k的近似值。,蒙特卡洛(Monte Carlo)方法,或称计算机随机模拟方法,是一种基于“随机数”的计算方法。这一方法源于美国在第二次世界大战时研制原子弹的“曼哈顿计划”。该计划的主持人之一、数学家冯诺伊曼用驰名世界的赌城摩纳哥的Monte Carlo来命名这种方法,为它蒙上了一层神秘色彩。,使用随机函数Rnd随机产生两个小数x、y,可构成一个坐标点(x,y),判断是否落在扇形内的充要条件是x2+y2=1,总计投放n次,根据条件判断统计得到落在扇形内的次数m,再根据两者的比例m/n,求得=4*m/n的近似值。,1)参考程序代码:,Private Sub Command1_Click()Dim Pi As Double,x As Double,y As Double Dim m As Long,n As Long Randomize Timer 随机数初始化 n=Val(Text1.Text)读入投放次数n If n=0 Then MsgBox 请输入投放次数n Exit Sub End If m=0 For I=1 To n x=Rnd()y=Rnd()If x 2+y 2=1 Then m=m+1 判断是否在扇形内 Next I Pi=4*m/n 计算出的近似值 Text2.Text=Str(Pi)End Sub,1.用迭代法 求的近似值。算法流程图 程序代码设计 示例程序,2.用蒙特卡洛法求的近似值。算法流程图 程序代码设计 示例程序,3.设计一个算法计算1900年1月1日之后的任何一天是星期几?用VB程序实现这一算法。算法流程图 界面设计 程序代码 示例程序,星期计算问题,平时在日常生活中遇到这样的问题,忘记了几月几日是星期几,一般会采用这样的方法,从一个已知的某天开始推算,先计算已知星期几的这一天距要推算的那天共相差几天,然后将天数除以7取余数,最后就可以推算出星期几了。已知公元元年1月1日是星期一,再计算需推算的日子离元年1月1日相距多少天(W),再用天数W除以7的余数加上1就是星期几了,余0就是星期一,余1就是星期二.,但是在计算天数时会发现由于中间会经历平年(365天)、闰年(366天),每年的不同月份天数也不相同,这样计算量是很大的,计算也十分困难。德国数学家克里斯蒂安蔡勒(Christian Zeller,1822-1899)在1886年推导出了一个解决此问题的著名的蔡勒公式,w=c/4-2*c+y+y/4+13*(m+1)/5+d-1 其中,c是年份的前2位,y是年份的后两位,m是月份,d是日数。1月和2月要按上一年的13月和 14月来算,这时c和y均按上一年取值,表示取整。,如:推算2009年1月1日是星期几?C=20,y=08(月按上一年13月来算,同时y取上一年的年份),M=13(月按上一年13月来算),d=1,w=20/4-2*20+8+8/4+13*(13+1)/5+1-1=11,除以7的余数为4,所以推算是星期四,与事实一致。为方便口算,上式中的13*(M+1)/5也往往写成26*(M+1)/10。,算法流程框图下图所示:,参考程序界面如下:,星期几计算问题界面,程序需要使用到四个文本框,其中三个分别用于输入年、月、日,另一个用于输出计算结果,一个命令按钮,当按下按钮时开始计算,五个标签,分别说明文本框的作用。,各控件属性设置参考如下:,参考程序代码如下:,Public Function leap(y As Integer)As Integer 判断是否为闰年函数 If y Mod 100=0 Then 是返回1,不是返回0If y Mod 400=0 Then leap=1 Else leap=0 函数说明见书4.4.2节ElseIf y Mod 4=0 Then leap=1 Else leap=0End IfEnd Function,Private Sub Command1_Click()Dim year as integer,month,day,w,c,y,m,d,ok As Integer year=Val(Text1.Text)month=Val(Text2.Text)day=Val(Text3.Text)ok=0判断输入的日期是否是有效的日期,根据平年、闰年,不同月份的不同情况来判断 If(month=1 Or month=3 Or month=5 Or month=7 Or month=8 Or month=10 Or month=12)And(day=1 And day=1 Or day=1 And day=1 And day=28)Then ok=1 If ok=0 Then Text4.Text=输入日期有错误,Else If month=1 Or month=2 Then year=year-1 month=month+12 End If c=year 100 y=year Mod 100 m=month d=day w=Int(c/4)-2*c+y+Int(y/4)+Int(13*(m+1)/5)+d 1 蔡勒公式 Text4.Text=Str(c)+Str(y)+Str(m)+Str(d)+Str(w)w=(w+700)Mod 7+1 求除以7的余数,w加上700保证余数一定是整数 Text4.Text=WeekdayName(w)转换为星期形式 End IfEnd Sub,Private Sub Text1_Click()Text1.Text=Text2.Text=Text3.Text=“利用WeekdayName 函数可将值转换成星期形式:,程序运行结果参考如下:,星期计算问题测试数据表,

    注意事项

    本文(课 计算圆周率π的近似值.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开