- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4-1节用解析法设计程序
4-1节? 用解析法设计程序
同学们,我想所有的同学都会测量物体和楼房的垂直高度,但如下的问题会测量吗?
4.1.1????? 用解析法求解问题的基本过程
1、测量高度问题的求解
问题:
4.1: 如图4-1所示,MN是竖直于地面的物体,其底部N不可到达。为了测量MN的高度,在地面上选取一条与MN在同一平面的水平线线段AB为基线,测得AB的长为a=20米,在A点向M点张望的仰角 A=38.40,在B点向M点张望的仰角B=22.80。试设计程序计算高度MN。
图4-1(1)测量物体高度示意图
?
(1)??? 分析问题(以下内容由老师正确引导,学生小组协作完成)
我们不可能直接求出物体的高度。但我们可以利用所学的知识(三角函数)来完成该工作。
?
在直角三角形ANM中可以得到:
tanA0=MN/AN
即:AN=MN/ tan A0
?
在直角三角形BNM中可以得到:
tan B0=MN/BN
即:BN=MN/ tan B0
?
所以:
AB=BN-AN
=MN/tan B0-MN/tan A0?
=MN(1/ tan B0-1/tan A0 )
?
(2)??? 设计算法
①?? 设计输入输出界面,从三个文本框中输入基线长a ,仰角A0用Alpha代替、B0用Bata代替
②?? 计算tan A0的倒数(用COTA表示),即
COTA=1/tan(A0*3.14159/180);
③?? 计算tan B0的倒数(用COTB表示),即
COTB=1/tan(B0*3.14159/180);
④?? 计算a/(COTB-COTA);
⑤?? 输出结果
?
(3)??? 编写程序
设计窗体如图4-2
图4-1(2)测量高度问题程序的窗口
?
?
对象名 属性名 属性值 功能 标签 [ 名称 ] label1
Label2
Label3
Label4 标签的名称 Caption 基线长? a=
仰角? α=
仰角? β=
被测物体高度= 设置标签显示的内容 文本框 Enabled Text1 textbox
Text2 textbox Text3 textbox Text4 textbox 文本框的名称 text 全部设置成空 设置text的值 按钮 [ 名称 ] command1 命令按钮的名称 Caption 计算 设置命令按钮显示的内容 表4-1(1)对象属性表
参考程序4-1:
Private Sub Command1_Click()
? a = Val(Text1.Text)
? Alpha = Val(Text2.Text)
? bata = Val(Text3.Text)
? pi = 3? COTA = 1 / Tan(Alpha * pi / 180)
? COTB = 1 / Tan(bata * pi / 180)
? MN = a / (COTB - COTA)
? Text4.Text = MN
End Sub
?
(4)??? 调试程序(运行源程序
?
图4-1(3)参考程序4-1运行的结果
?
(5)??? 检验结果
?
探究:
在本问题里,如果输入的两个仰角相等,或其中一个仰角是900,都会导致程序非正常结束。如果,甚至会使输出的结果是负数!请讨论一下使用者输入数据时比较常见的错误会有哪些?我们在程序中可以怎样防范?
2、总结
解析法的基本概念
通过分析问题中各要素之间的关系,用最简练的语言或形式化的符号来表达它们的关系,得出解决问题所需的表达式,然后设计程序求解问题的方法称为解析法。
?
4.1.2 用解析法求解问题的实践
1、电阻计算问题
问题:
4-2:在一家工厂作社会调查时,张军了解到他们正在进行一项技术改革,
其中有一个环节是改变一个局部电路的电阻以观察对整个器件的影响。这个局部电路由并联的两个分支组成(如图4-5),其中一个分支的等效电阻是R1,而另一个分支的等效电阻为R2。因为电路特性的需要,必须保持R2-R1=2000Ω。工厂技术人员希望由这两个分支并联的电路的总电阻R分别取为1000Ω、2000Ω……100000Ω。这样得多次计算R1和R2的电阻值,而这种计算每次都很麻烦。于是张军就编制了一个程序帮他们解决问题,只要输入总电阻R的值,程序就计算出相应的R1和R2的值。张军因此受到了技术员的称赞。你也能编出这个程序吗?
R1
?
R2
?
图4-1(4)并联电路示意图
?
张军是这样想的:
根据并联电路电阻的计算公式,1/R=I/R1十1/R2,以R2=R1+2000代入,
即得:
1/R=1/R1+1/(R1+2000)
以R1为未知量、R为已知量,通过去分母整理可以得到关于R1的
文档评论(0)