资源预览内容
第1页 / 共28页
第2页 / 共28页
第3页 / 共28页
第4页 / 共28页
第5页 / 共28页
第6页 / 共28页
第7页 / 共28页
第8页 / 共28页
第9页 / 共28页
第10页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
授课人:杨鹏第24课 计算圆周率的近似值高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏1.用迭代法 求的近似值。 2.用蒙特卡洛法求的值 。3.设计一个算法计算1900 年1月1日之后的任何一 天是星期几?用VB程序 实现这一算法。高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏复习引入解析算法基本思想:用解析的方法找出表示问题的前提条件 与所求结果之间关系的数学表达式,并通过 表达式的计算来实现问题求解。在设计解析算法时,必须注意保证 计算过程描述的正确性。高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏问题提出圆周率=3.1415926有无穷多位,历史 上 有很多科学家计算过这个数,古希腊学者阿基 米德、我国杰出的数学家和天文学家祖冲之等,都 提出许多求解的方法。公元前3世纪,古希腊学者阿基米德用圆 内接或外切正多边形来近似代替圆,得到近似圆周 率。到了公元5世纪,我国杰出的数学家和天文学 家祖冲之在刘徽“割圆术”的基础上,使用更加精 密的方法,精确到小数点后七位,求出结果在 3.14159263.1415927间,这个的圆周率,在当时 是非常了不起的成就。直到16世纪,才由中亚人计 算出精确度为小数16位。随着计算机的出现,的 计算取得了新的突破。利用计算机技术将值计算 到小数点后20多亿位,甚至到上千亿位。高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏古今中外的数学家们计算的近似值主要有三类方法 :1.利用“正多边形逼近”的方法。2.使用迭代法。可利用下列式子计算。3.使用蒙特卡洛法(Monte-Carlo method)。蒙特卡 洛法是使用随机模拟实验结果进行统计来求得的 近似值的方法。高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏实践活动用级数公式 ,计算圆周率的近似值。高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏1.算法分析按照级数公式, 由若干项 求和得到,第1项为 ,第2项为 ,第3项为,第4项为 分析可得第n项为an与前一项an-1的关系是 。高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏2.算法流程图:变量n: 输入计算的项数 变量pi: 计算的结果 变量an: 第n项的值高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏3.程序界面设计: 高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏控件属性值的设置参考如下表: 对象名属性名属性值说明 Form1Caption计计算的近似值值说明程序的功能 Text2Text空串输出计算的结果( 的近似值)BackColor蓝蓝色 Text1Text空串输入各个电阻的阻值 (每次输入一个)BackColor黄色 Command 1Caption计计算说明命令按钮的作用Label1Caption输输入项项数n :说明文本框Text1的作 用Label2Caption计计算的近似值值说明文本框Text2的作 用 Image1Picturepi.jpg显示图片pi.jpg(级数公式)高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏4.分析算法流程,编写代码 Private Sub Command1_Click()Dim Pi As Double, an As DoubleDim m, n As Integern = Val(Text1.Text)Pi = 1an = 1For m = 2 To nan = an * (m - 1) / (2 * m - 1) 计算第n项的值Pi = Pi + an 进行累加NextText2.Text = Str(Pi * 2)End Sub高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏5.运行调试程序; 高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏课堂练习1.使用蒙特卡洛法求的近似值。利用求单位正方形与内接圆 面积的比例关系来求得的近似 值 。单位圆的1/4面积是一个扇 形,它是边长为1单位正方形的 一部分。 如果能求出扇形面积 s1在正方形面积s中占的比例 k=s1/s,它的值也等于/4,从 而就计算得到的值。怎样求出扇形面积在正方形 面积中占的比例k呢?蒙特卡洛 法是在正方形中随机投入很多点 ,使所投的点落在正方形中每一 个位置的机会相等。有些点将落 在扇形内,而另一些点将会落在 扇形外,落在扇形内的点数m与 所投点的总数n之间比m/n即为k 的近似值。蒙特卡洛(Monte Carlo)方法,或称计算 机随机模拟方法,是一 种基于“随机数”的计算 方法。这一方法源于美 国在第二次世界大战时 研制原子弹的“曼哈顿计 划”。该计划的主持人之 一、数学家冯诺伊曼用 驰名世界的赌城摩纳 哥的Monte Carlo来命 名这种方法,为它蒙上 了一层神秘色彩。 高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏使用随机函数Rnd随机产生两个小数x、y,可构成一个坐 标点(x,y),判断是否落在扇形内的充要条件是x2+y2= 1 And day = 1 Or day = 1 And day = 1 And day = 28) Then ok = 1If ok = 0 ThenText4.Text = “输入日期有错误“高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏ElseIf month = 1 Or month = 2 Thenyear = year - 1month = month + 12End Ifc = year 100y = year Mod 100m = monthd = dayw = 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 If End Sub高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏Private Sub Text1_Click()Text1.Text = “Text2.Text = “Text3.Text = “利用WeekdayName 函数可将值转换成星期形式:值1234567返回值星期日星期一星期二星期三星期四星期五星期六高中信息技术必修高中信息技术必修2 2:算法与程序设计:算法与程序设计授课人:杨鹏程序运行结果参考如下:星期计算问题测试数据表测 试 数 据 运 行 结 果 第一组1905年月1 日星期日第二组1988年8月8 日星期一第三组2005年5月 日星期日第四组2005年1月54 日输输入有误误第五组2005年13月4 日输输入有误误第六组2005年2月29 日输输入有误误
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号