算法初步比较经典的教案_第1页
算法初步比较经典的教案_第2页
算法初步比较经典的教案_第3页
算法初步比较经典的教案_第4页
算法初步比较经典的教案_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、、知识网络算法初步与框图算法概念算法与程序框图框图的逻辑结构输入语句算法初步算法语句循环语句条件语句输出语句 赋值语句算法案例、考纲要求.算法的含义、程序框图了解算法的含义,了解算法的思想.(2)理解程序框图的三种基本逻辑结构:顺序、条件分支、循环.基本算法语句理解几种基本算法语句一一输入语句、输出语句、赋值语句、条件语句、循环语句的含 义.三、复习指南本章是新增内容,多以选择题或填空题形式考查,常与数列、函数等知识联系密切 .考查 的重点是算法语句与程序框图,以基础知识为主,如给出程序框图或算法语句,求输出结果或 说明算法的功能;或写出程序框图的算法语句,判断框内的填空等考查题型.难度层次属

2、中偏 低.第一节算法与程序框图知识回顾定规则解决某一类问题的明确和有限的步骤.算法的概念:算法通常是指按.程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的图形.程序框图的三种基本逻辑结构是顺序结构、条件结构、循环结构.算法的描述方式有:自然语言、程序框图、程序语言.算法的基本特征:明确性:算法的每一步执行什么是明确的;顺序性:算法的“前一 步”是“后一步”的前提,“后一步”是“前一步”的继续;有限性:算法必须在有限步内完成任务,不能无限制的持续进行;通用性:算法应能解决某一类问题.典例精析例1.如图所示是一个算法的程序框图,则该程序框图所表示的功能是 解析:首先要理解各程序框的

3、含义,输入a,b,c三个数之后,接着判断a,b的大小,若b小,则把b赋给a,否则执行下一步,即判断a与c的大小,若c小,则把c赋给a,否则执行下一 步,这样输出的a是a,b,c三个数中的最小值.所以该程序框图所表示的功能是求 a,b,c三个 数中的最小值.评注:求a,b,c三个数中的最小值的算法设计也可以用下面程序框图来表示.例2.下列程序框图表示的算法功能是()(1)计算小于100的奇数的连乘积(2)计算从1开始的连续奇数的连乘积(3)计算从1开始的连续奇数的连乘积,当乘积大于100时,计算奇数的个数(4)计算1X3X5XL Xn 100成立时n的最小值解析:为了正确地理解程序框图表示的算法

4、,可以将执行过程分解,分析每一步执行的结果. 可以看出程序框图中含有当型的循环结构,故分析每一次循环的情况,列表如下:第一次:S 1 3,i 5 ;第二次:S 1 3 5,i 7;第三次:S 1 3 5 7,i 9,此时S 100不成立,输出结果是7,程序框图表示的算法功能是求使1X3X5XL Xn 100成立时n的最小值.选D.评注:通过列表,我们能清楚了解程序的每一步中的各个变量是怎样变化的,这正是程序运行的本质所在.本题若要求编写求使1X3X5XL Xn 100成立时n的最小值的程序框图或程序 时,很容易弄错输出的结果,应注意.例3.在音乐唱片超市里,每张唱片售价为 25元,顾客如果购买

5、5张以上(含5张)唱片, 则按九折收费,如果购买10张以上(含10张)唱片,则按八折收费,请设计算法步骤并画 出程序框图,要求输入张数x,输出实际收费y(元).25x (x 5)分析:先写出y与X之间的函数关系式,有y 22.5x (5 x 10),再利用条件结构画程序框图.20 x (x 10)解:算法步骤如下:匚二第一步,输入购买的张数x,第二步,判断x是否小于5,若是,计算y 25x;否则,判断x是否小于10,若是,计算y 22.5x;否则,计算y 20 x.第三步,输出y.输出XU案件结构的 般地,分n段的rrn程序框图如下: 评注:凡必须先根据条件做出判断,然后再决定进行哪一个步骤的

6、问题, 须引入判断框,采用条件结构设计算法.如果变量分三级(或以上) 嵌套,不能忽视结果中“是”、“否”的书写,否则不知道执行哪一条路径 分段函数,需要引入n 1个判断框.条件结构有以下两种基本类型.一111 例4.回出求1 1 L的值的程序框图.22 321 002否分析:这是一个有规律的数列求和问题,每次都进行了相同的运算,故应用循环结的进行算法 设计.解:程序框图如下:(1)当型循环(2)直到型循环 评注:(1) 解题关键是选择好计数变量i和累加变量S的初始值,并写出用i表示的数列的通 项公式是; 循环结构主要用在一些有规律的重复计算的算法中 ,如累加求和,累乘求积等问题.在循环 结构中

7、,要注意根据条件,设计合理的计数变量、累加(积)变量以及它们的初始值等,特别要注 意循环结构中条件的表述要恰当、精确,以免出现多一次或少一次循环 .(3)循环结构分为两类:一类是当型循环结构,如下左图所示;另一类是直到型循环结构, 如下右图所示.变式训练画出求1 J2AL 工 的值的程序框图. 47100解:程序框图如下:例5.某工厂2005年的生产总值为200万元,技术改进后预计以后后每年的年生产总值都比 上一年增长5%.设计一个程序框图,输出预期年生产总值超过 300万元的最早年份及2005年 到此年份之前(不包此年份)的年生产总值的和.分析:本例可用循环结构来实现.(1)确定“循环体”:

8、设a为某年的年生产总值,n为年份,S 为年产值的总和,则循环体为初始化变量:n的初 0 始值为2005,a的初始值为200,S的初始值为0.S S a.设定循环控制条件:a 300解:程序框图如下:a a 0.05a,评注:本问题的关健是 n n 1.设计好循环体,注意S S a与n之间的对应关系.本题若将S S a放在n n 1之后,则输出时须重新赋值n n 1 ,否则n的值为超过300万的 年份的下一年.本题也可用当型循环结构来表示.变式训练:设计一个程序框图,求使S 1 2 3 L n 5000的最小n的值,并输出此时S的 值.解:程序框图如下:基础自测一、选择题1.下列说法正确的是()

9、A.算法就是某个问题的解题过程;B.算法执行后可以产生不同的结果;C.解决某一个具体问题算法不同结果不同;D.算法执行步骤的次数不可以很大,否则无法实施.解析:选项A ,算法不能等同于解法;选项B,例如:判断一个正整数是否为质数,结果 为“是质数”和“不是质数”两种;选项C,解决某一个具体问题算法不同结果应该相同,否则算法构造的有问题;选项 D,算法可以为很多次,1不可以无限次.选 B.2、如图所示的程序框图中,则第 3个输出的数是()A. 1 B. 3D. -22.解析:前3个分别输出的数是1, - , 2.故选C.23.如图给出的是求111 2 4 6其中判断框内应填入的条件是10 20

10、10 .选A2 44.(2007年高考山东卷)阅读右边的程序框图,若输入的n是100,则输出的变量S和T的值依次是()2550, 25002550, 25502500, 25002500, 2550.解析:依据框图可得1600元的免征个人 前三级税率如下左S 100 98 96 . 2 2550, T 99 97 95 . 1 2500.选 A. 2006年1月份开始实施的个人所得税法规定:全月总收入不超过 工资、薪金所得税,超过1600元部分需征税.设全月总收入金额为 x元, 表所小:级数全月应纳税金额x 1600税率1不超过500元部分5%2超过500至2000元部分10%3超过2000至

11、5000元部分15%当工资薪金所得不超过3600元, 则输出、输出分别为().A. 0.05x; 0.1xC. 0.05x 80; 0.1x;计算个人所得税的一个算法框图如图B . 0.05x; 0.1x 185D . 0.05x 80; 0.1x 1855.解析:设全月总收入金额为x元,所得税额为y元,则y与x之间的函数关系为0 (0 x 1600)y (x 1600)g5% (1600 x 2100) 选 D. 25 (x 2100)g10% (2100 x 3600)二、填空题6. (2008年高考山东卷)执行右边的程序框图,若p=,则输出的6.解析:第一次循环后,第三次循环后,1218

12、0.8,止匕时n=2;第二次循环后,S输出,故填4.n=1 12 40.8,止匕时n 3;7. (2008年高考江苏卷)某地区为了解70 80岁的老人的日平均睡眠时间50位老人进行调查,下表是这 50位老人睡眠时间的频率分布表:(单位:h),随机选择了序号 i分组(睡眠时间)组中值3 )频数(人数)频率(f ) 1 i1621032041054在上述统计数据的分析中一部分计算见算法流程图, 则输出的S的值为 解析:由流程图故填.8.如果执行右面的程序框图,那么输出的 S 8.解析:S 2 4 6 L 100 2550三、解答题.请阅读下面程序框图,说明此程序的功能 解:程序功能是求s的值.s

13、1 2 22 . 26,并输出 s _ 2 (x 2) (x 0).已知函数y 4 (x 0),请画出程序框图,要求输入自变量 x的值, _ 2(x 2) (x 0)输出函数值y.解:.画出一个计算1 5 10 15 L 100的程序框图.11解:程序框图如下12、甲、乙两位同学为解决数列求和问题,试图编写一程序 .两人各自编写的程序框图分别 如图1和如图2. (I)根据图1和图2,试判断甲、乙两位同学编写的程序框图输出的结果 是否一致当n =20时分别求它们输出的结果;(n)若希望通过对图2虚框中某一步(或几步)的修改来实现“求首项为 2,公比为3的 等比数列的前n项和“,请你给出修改后虚框

14、部分的流程图.否结束图112、解:(I)输出结果一致. 当n=20时,图 1 的结果为 2 + 4+6+T 38+40 = 2X ( 1 + 2+3+-+ 20) =420图 2 的结果为 2 + 4+6+T 38+40 = 2X ( 1 + 2+3+-+ 20) =420 (n)修改后虚框部分的流程图为S*=S+a a -=3* a 产=i+1 第二节 算法的基本语句及算法案例知识回顾.任何一种程序设计语言都包含五种基本的算法语句,它们是输入语句 、输出语句、赋值语句, 条件语句、循环语句.输入语句的一般格式是INPUT 提示内容”;变量; 输出语句的一般格式是PRINT ”提示内容;表达式

15、;赋值语句的一般格式是变量表达式;IF条件 THENIF条件 THEN 语句体1条件语句的一般格式是语句体 或ELSE;END IF语句体2END IF循环语句的一般格式是循环体和,循环体 LOOP UNTIL 条件 WEND输入语句、 输出语句、 赋值语句基本对应于程序框图中的顺序结构;条件语句、循环语句分别用来表达程序框图中的条件结构和循环结构 .常用符号运算符号:加_+_,减-乘*_,除乘方aAb,整数取商,求余数MOD.逻辑符号:且AND或OR大于,等于三,小于v,大于等于=,小于等于 =,不等于0. 常用函数:绝对值 ABS平方根SQR取整INT.算法案例(1)辗转相除法和更相减损术

16、辗转相除法和更相减损术都是求两个正整数的最大公约数的方法.(1)辗转相除法就是对于给定的两个正整数,用大数除以小数,若余数不为 0,则将小数和余数构成新的一对数,继续上面的除法,反复执行此步骤,直到大数被小数除尽,则这时较 小的数就是原来两个数的最大公约数.(2)更相减损术就是对于给定的两个正整数,若它们都是偶数,则将它们反复除以2(假设进行了 k次),直到它们至少有一个不是偶数后,将大数减小数,然后将差和较小的数构成一 对新数,继续上面的减法,反复执行此步骤,直到差和较小的数相等,此时相等的数再乘以原来约简的2k即为所求两数的最大公约数.(2)秦九韶算法秦九韶算法是求多项式值的优秀算法.设

17、f(x) anxn an 1xn 1 L a1x a0 ,改写为如下形式:设Vo an, V1 Vox an1这样求n次多项式f(x)的值就转化为求n个一次多项式的值.当多项式中有些项不存在时,可将这几项看做0 xn,补齐后再利用秦九韶算法进行计算.对于一个n次多项式,只需做n次乘法和n次加法运算即可.(3)进位制K进制数的基数为k, k进制数是由0: k 1之间的数字构成的.将十进制的数转化为k进制数的方法是除k取余法.anan iL ai%(k)anknan ikn 1 L &ka()典例精析 例1 .写出用循环语句描述求S 1 1 1 1 L 的值的算法程序.2 3 499 100解:算

18、法程序如下:(1)当型循环(2)直到型循环评注:在编写算法的程序时,可先画出程序框图,抓住程序框图表示算法这个核心.注意分别 用当型循环和直到型循环语句编写的程序中,循环条件的区别与联系.例2、某市对排污水进行综合治理,征收污水处理费,系统对各厂一个月内排出的污水量 m吨 收取的污水处理费y元,运行程序如下所示: 请写出y与m的函数关系,并求排放污水150吨的污水处理费用.解:这个程序反映的是一个分段函数因为m 150 100,所以y 150 25(150 100) 1400 ,故该厂应缴纳污水处理费 1400元.评注:解决分段函数要用条件语句来处理.本题可画出程序框图帮助理解.例3.求三个数

19、72,120,168的最大公约数.解法1:用辗转相除法先求120,168的最大公约数,因为 168 120 1 48,120 48 2 24,48 24 2所以120,168的最大公约数是24.再求72,24的最大公约数,因为72 24 3,所以72,24的最大公约数为24, 即72,120,168的最大公约数为24.解法2:用更相减损术先求120,168的最大公约数,168-120=48,120-48=72,72-48=24,48-24=24 所以120,168的最大公约数为24.再求72,24的最大公约数,72-24=48, 48-24=2472,24的最大公约数为24,72,120,16

20、8的最大公约数为24.辗转相除法与更相减损术均是求两个正整数的最大公约 方法,要理解和掌握它们的操作步骤.试写出求正整数m,n(m n)的最小公倍数的算法程序用秦九韶算法求多项式 f(x) x5 2x4 3x3 4x2 5x 6 x 2时的值.分析:先改写多项式,再由内向外计算.评注:用秦九韶算法求多项式值,关健是正确将多项式改写,然后由内向外计算求得 本题也可简写为下式:例5.完成下列进制的转化解:(1)102023) 1 34 2 32 2 30 101(10) (2)用8反复去除101,直到商为0止,所得的余数(从末位读起)就是十进制数101的 8进制表示8101余数8|1258 14所

21、以 101(必 145(8)评注:将k进制的数转化为k进制的数的方法是先将k进制的数转化为十进制的数,再将这个 数转化为k进制的数.变式训练:下面是把二进制数11111(2)化为十进制数的一个程序框图,判断框内应填入的条件()解:11111(2)1 24 1 23 1 22 1 2 1,故判断框内应填入的条件 i 4.选C.X基础自测一、选择题.下列给出的赋值语句中正确的是()A 4 M B M MCBA3 D xy0.解析:赋值语句的功能.选B2当x 2时,下面的程序输出的结果是()A 3 B 7 C 15 D 17解析:0 2 1 1,1 2 1 3,3 2 1 7,7 2 1 15.选

22、C.运行下列程序:当输入56, 42时,输出的结果是A. 56B. 42C. 84D. 14.解析:该程序的功能是用辗转相除法求正整数 m,n(m n)的最大公约数,故选D4下边程序运行后输出的结果为()A 50 B 5 C 25 D 0.解析:j 1,a 1;j 2,a 3; j 3,a 1; j 4,a 0; j 5,a 0.选 D二、填空题三个数324,243,135的最大公约数是 5 解析:324 243 1 81,135 81 1 54,81 54 1 27,54 27 2 .填27.阅读下列程序: 当程序输入x值为123时,问运行的结果是 .解析:算术运算符 和MO吩别用取商和余数.该程序的功能是把一个三位数各位上的数字 颠倒过来.所以运行的结果是321. (2005年高考北京卷理14)已知n次多项式(x) a0 xn a41 L 小1x a0,如果在一 种算法中,计算xok (k = 2, 3, 4,n)的值需要k1次乘法,计算旦()的值共需要9 次运算(6次乘法,3次

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论