4-2用穷举法设计程序.ppt
《4-2用穷举法设计程序.ppt》由会员分享,可在线阅读,更多相关《4-2用穷举法设计程序.ppt(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、4-2 用穷举法设计程序用穷举法设计程序栽树数量问题的求解:栽树数量问题的求解:问题:a,b,c是三个整数,100abc10,a*b*c=30723,且ab+c,试确定a,b,c的值。解决:(1)分析问题 P104(2)设计算法 P104(3)编写程序 P104(4)调试程序private sub form_click()dim a as integer,b as integern=30723for c=10 to sqr(n)for b=c to sqr(n)if n mod(c*b)=0 then a=ncb if ab+c then print a=;b=;b,c=;c end if n
2、ext b next cend sub程序:程序:问题问题1:公元前5世纪,我国数学家张丘建在算经一书中提出了一个“百钱买百鸡问题”。问题如下:鸡翁一值5,鸡母一值钱3,鸡雏三值钱1。百钱买百鸡,问鸡翁、鸡母和鸡雏各几何?列出了解析式:列出了解析式:设公鸡数为x,母鸡数为y,小鸡数为z,则有方程:X+y+z=100 5*x+3*y+z/3=100问:三个未知数,两个方程,如何求解?穷举法的基本思想:穷举法的基本思想:列举出所有可能的情况,逐个判断有哪些是符合问题所要求的条件,从而得到问题的全部解答。即将x、y、z的各种可能的值代入方程,看是否满足两个方程,如果满足,就是一组解。百钱买百鸡问题的
3、求解百钱买百鸡问题的求解设公鸡数为x,母鸡数为y,小鸡数为z,则有方程:X+y+z=1005*x+3*y+z/3=100根据题目意思可知:0 X 1000 Y 1000 Z 100根据题目意思上式可优化为:0 X 100/50 y 100/3(1)分析问题(2)设计算法设计算法 X=0 Y=0 z=100-x y 判断5*x+3*y+1/3*z=100成立,则打印x,y,z 如果y 33,则 y=y+1返回 如果x 20,则x=x+1返回 结束(3)编写程序编写程序(带下划线部分由学生完成)(带下划线部分由学生完成)Private Sub Command1_Click()Dim x,y,z As Integer Print 公鸡,母鸡,小鸡 Print For x=For y=z=If Then Print x,y,z Next y Next xEnd Sub0 To 200 To 33100-x-y5*x+3*y+1/3*z=100(4)调试程序调试程序穷举法小结:穷举法小结:(1)用穷举算法解决问题,通常可以从两个方面进行分析:确定范围;问题所涉及的情况有哪些,情况的种数可不可以确定。验证条件:分析出来的这些情况,需要满足什么条件,才成为问题的答案。(3)要使用多重循环。(4)如何评价一个算法的好坏,在考虑效率的同时,也要考虑程序的易读性。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 穷举 设计 程序
限制150内