(整理版)例谈生活中的算法问题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例谈生活中的算法问题
数学来源于生活,效劳于社会.新课程标准对应用性问题有较高的要求,贯穿于高中数学的始末.数学与生活息息相关,数学是有用的,在生活中做一件事情的方法和步骤有多种,生活中的许多问题都可以用算法描述,用程序框图表达.例如:
一、国王有多少小麦?
例1.相传古印度国王舍罕要奖赏他聪明能干的宰相达尔(国际
象棋创造者〕,问他需要什么,达依尔说:“国王只要在国际象棋
的棋盘第一格上放一粒麦子,第二格放二粒麦子,第三格放四粒,
以后按比例每一格加一倍,一直放到第64格〔国际象棋棋盘是8×
8=64格〕,我就感恩不尽了,其他我什么也不要了.〞国王想:“这
还不容易!〞让人扛来一袋小麦,但不到一会儿全用没了,再来一
袋很快又没有了,结果全印度的粮食全部用完还不够.国王很奇怪,
怎样也算不清这笔账.现在我们用电子计算机来算一下,求需要多
少体积的小麦(1m3约有1.42 ×108颗〕,请你设计一个算法,画出程
序框图,用根本语句写出程序.
图(1)
程序框图如下图:
程序如下:S=o
i=o
WHILE i<=63
S= S+2^i
i=i十1
WEND
V=S/(1.42*10^8)
PRINT V
END
二、申办第29届奥林匹
克运动会
例2.北京获得了第29
图〔2〕图〔3〕
届奥林匹克运动会主办
权.国际奥委会是通过对遴选出的5个申办城市进行表决而决定主办权
的.表决的操作程序是:首先进行第一轮投票,如果一个城市得票超过
总票数的一半,那么该城市将获得举办权;如果所有申办城市得票数都
不超过总票数的一半,那么将得票最少的城市淘汰,然后重复上述过程,
直到选出一个申办城市为止.请设计一个算法表述上面过程,并画出程
序框图.
解:算法如下:〔1〕投票;
(2)统计票数,如果有一个城市得票超过总票数的一半,那么该城
市就获得主办权;否那么淘汰得票数最少的城市,转(1);
(3)宣布主办城市.程序框图:如图〔1〕所示.
点评:算法本身就是用计算机解决一些实际问题的方法,一定要充
分理解算法的程序性、有限性、构造性、精确性、问题的指向性等特点.
三、购置火车票
图(4)
例3.儿童乘火车时,假设身高不超过1. 1米,那么无需购票,假设身高超过1.1米但不超过米,可买半票;假设超过米,应买全票.设计一个算法,并画出框图.分析:根据题意义,该题的算法中应有条件结构,首先要以身高为标准,分成应买票和免票,在买票中再分半票和全票,根据这一思路,买票的算法步骤如下:
第1步:测量儿童身高h;
第2步:如果h≤1.1,那么免费乘车,否那么, 如果h≤1.4.那么买半票乘车,否那么买全票.
其程序框图如图〔2〕:
解后反思:在这个程序里我们关键要知道两个判断点,一个是以1. lm为判断点,把身高分为两段,在大于1. lm的判断里,一个的判断把其分两段,因此这个判断是套在1. lm 的判断里,在这里我们用到了程序的嵌套.
四、分钱
例4.某科研所决定拿出一定量的资金对科研人员进行奖励,按照科研成果价值的大小决定奖励前10名.第1名得全部奖金的一半多1万元,第二名得剩余的奖金的一半多1万元.第三名再得剩余奖金的一半多1万元,依次类推,到第10名恰得奖金1万元,问科研所最初拿出多少万元?
分析: 第10名奖金额S10=1万元,第9名奖金额S9=(1+1)×2=4万元,第8名奖金额S8=(4+1)×2=10万元……第1名奖金额
S1=( S2+1)×2
得递推公式S io=1, S n =( S n +1+1)×2,
n=1,2…9.根据以上解题思路,程序
框图为如图(3)
程序为:
五、费
例 5.某地
电信部门规定:
拨打市内
图(5)
时,如果通话时
间不超过3min通话时间不超过3min,那么收取通话费0. 22元;如果通话时间超过3min,那么超过局部按每分钟0.1元收取通话费,缺乏1 min按1 min计.设通话时间为t(min),通话费用为y(元),如何设计一个计算通话费用的算法程序框图.
解析:实际上y是关于t的分段函数,关系式为:
[t-3]表示取不大于t-3的整数局部.其算法的程序框图如上图(4)所示:
点评:先把实际问题转化为数学问题,再画数学问题的算法的程序框图.规律及方法总结:
1.正确理解算法的概念,一个程序的算法要本着方便简洁的原那么,还要讲究科学性,一个程序的算法步骤是按一定顺序进行的,不具有可逆性.
2.在设计算法的过程中要牢固把握住它的五个特征:有穷性、确定性、可行性、输人、输出.
3.正确使用算法的程序框图,在对一个算法透彻地分析的根底上再设计流程图.
4.设计程序框图时可以分模块进行,把一个大的流程图分割成小的几个模块,先将每个小模块设计好,再按顺序把这些小模块组装好,形成完整的程序流程图.5.熟悉算法的三种根本逻辑结构的构成模式及其功能,根据问题的需要灵活选择运用.。