必修三 算法与程序框图(优秀教案!)教学内容
- 格式:doc
- 大小:115.00 KB
- 文档页数:8
2019-2020年高中数学算法与程序框图算法的概念教案新课标人教版必修3(A)(一)算法的概念算法 (algorithm)指的是用阿拉伯数字进行算术运算的过程。
在数学中,现代意义上的“算法”通常是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确的和有效的,而且能够在有限步之内完成。
描述算法可以有不同的方式,例如,可以用自然语言和数学语言加以叙述;也可以用算法语言给出精确的说明;或者用框图直观地显示算法的全貌。
(二)例题讲解1、写出解二元一次方程组⎩⎨⎧=+-=-,,1212y x y x的一个算法。
解:算法:第一步:②-①×2,得5y=3,第二步:解③得y= 第三步:将y=代入①,得x=。
. 思考:试写出解一般的二元一次方程组的一个算法。
2、任意给定一个大于1的整数n ,试设计一个程序或步骤对n 是否为质数做出判定。
解:算法:第一步:判断n 是否等于2。
若n=2,则n 是质数;若n>2,则执行第二步。
第二步:依次从2到(n-1)检验是不是n 的因数,即整除n 的数。
若有这样的数,则n 不是质数;若没有这样的数,则n 是质数。
(三)算法的特点(1)有穷性:即一个算法的步骤序列是有限的;(2)确定性:即算法中的每一步应该是确定的并且能有效地执行且得到确定的结果;(3)逻辑性:即算法从初始步骤开始,分为若干明确的步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,而且每一步都是正确无误的,从而组成了一个有着很强逻辑性的步骤序列;(4)不唯一性:即求解一个问题的算法不一定是唯一的;(5)普遍性:即很多具体的问题,都可以设计合理的算法去解决。
例3、用二分法设计一个求方程x 2-2=0的近似根的算法。
解:算法:第一步:令f(x)=x 2-2。
因为f(1)<0,f(2)>0,所以设x 1=1,x 2=2。
第二步:令 m= ,判断f(m)是否为0。
第一课时 1.1.1 算法的概念教学要求:了解算法的含义,体会算法的思想;能够用自然语言叙述算法;掌握正确的算法应满足的要求;会写出解线性方程(组)的算法、判断一个数为质数的算法、用二分法求方程近似根的算法.教学重点:解二元一次方程组等几个典型的的算法设计.教学难点:算法的含义、把自然语言转化为算法语言.教学过程:一、复习准备:1. 提问:我们古代的计算工具?近代计算手段?(算筹与算盘→计算器与计算机,见章头图)2. 提问:①小学四则运算的规则?(先乘除,后加减)②初中解二元一次方程组的方法?(消元法)③高中二分法求方程近似解的步骤?(给定精度ε,二分法求方程根近似值步骤如下:A.确定区间,验证,给定精度ε;B. 求区间的中点;C. 计算:若,则就是函数的零点;若,则令(此时零点);若,则令(此时零点);D. 判断是否达到精度ε;即若,则得到零点零点值a(或b);否则重复步骤2~4.二、讲授新课:1. 教学算法的含义:①出示例:写出解二元一次方程组的具体步骤.先具体解方程组,学生说解答,教师写解法→针对解答过程分析具体步骤,构成其算法第一步:②-①×2,得5y=0 ③;第二步:解③得y=0;第三步:将y=0代入①,得x=2.②理解算法:12世纪时,指用阿拉伯数字进行算术运算的过程. 现代意义上的算法是可以用计算机来解决的某一类问题的程序或步骤,程序和步骤必须是明确和有效的,且能在有限步完成. 广义的算法是指做某一件事的步骤或程序.算法特点:确定性;有限性;顺序性;正确性;普遍性.举例生活中的算法:菜谱是做菜肴的算法;洗衣机的使用说明书是操作洗衣机的算法;歌谱是一首歌曲的算法;渡河问题.③练习:写出解方程组的算法.2. 教学几个典型的算法:①出示例1:任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出判断.提问:什么叫质数?如何判断一个数是否质数?→写出算法.分析:此算法是用自然语言的形式描述的. 设计算法要求:写出的算法必须能解决一类问题,并且能够重复使用. 要使算法尽量简单、步骤尽量少. 要保证算法正确,且计算机能够执行.②出示例2:用二分法设计一个求方程的近似根的算法.提问:二分法的思想及步骤?如何求方程近似解→写出算法.③练习:举例更多的算法例子;→对比一般解决问题的过程,讨论算法的主要特征.3. 小结:算法含义与特征;两类算法问题(数值型、非数值型);算法的自然语言表示.三、巩固练习:1. 写出下列算法:解方程x2-2x-3=0;求1×3×5×7×9×11的值2. 有蓝和黑两个墨水瓶,但现在却错把蓝墨水装在了黑墨水瓶中,黑墨水错装在了蓝墨水瓶中,要求将其互换,请你设计算法解决这一问题.3. 根据教材P6 的框图表示,使用程序框表示以上算法.4. 作业:教材P4 1、2题.第二课时 1.1.2 程序框图(一)教学要求:掌握程序框图的概念;会用通用的图形符号表示算法,掌握算法的三个基本逻辑结构. 掌握画程序框图的基本规则,能正确画出程序框图. 通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程;学会灵活、正确地画程序框图.教学重点:程序框图的基本概念、基本图形符号和3种基本逻辑结构.教学难点:综合运用框图知识正确地画出程序框图教学过程:一、复习准备:1. 写出算法:给定一个正整数n,判定n是否偶数.2. 用二分法设计一个求方程的近似根的算法.二、讲授新课:1. 教学程序框图的认识:①讨论:如何形象直观的表示算法?→图形方法.教师给出一个流程图(上面1题),学生说说理解的算法步骤.②定义程序框图:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.③程序框名称功能终端框表示一个算法的起始和结束(起止框)输入、输出框表示一个算法输入和输出的信息处理(执行)框赋值、计算判断框判断一个条件是否成立流程线连接程序框④阅读教材P5的程序框图. →讨论:输入35后,框图的运行流程,讨论:最大的I值.2. 教学算法的基本逻辑结构:①讨论:P5的程序框图,感觉上可以如何大致分块?流程再现出一些什么结构特征?→教师指出:顺序结构、条件结构、循环结构.②试用一般的框图表示三种逻辑结构. (见下图)③出示例3:已知一个三角形的三边分别为4,5,6,利用海伦公式设计一个算法,求出它的面积,并画出算法的程序框图. (学生用自然语言表示算法→师生共写程序框图→讨论:结构特征)④出示例4:任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在.画出这个算法的程序框图. (学生分析算法→写出程序框图→试验结果→讨论结构)⑤出示例5:设计一个计算1+2+3+…+1000的值的算法,并画出程序框图. (学生分析算法→写出程序框图→给出另一种循环结构的框图→对比两种循环结构)3. 小结:程序框图的基本知识;三种基本逻辑结构;画程序框图要注意:流程线的前头;判断框后边的流程线应根据情况标注“是”或“否”;循环结构中要设计合理的计数或累加变量等.三、巩固练习:1.练习:把复习准备题②的算法写成框图. 2. 作业:P12 A组1、2题.第三课时 1.1.2 程序框图(二)教学要求:更进一步理解算法,掌握算法的三个基本逻辑结构. 掌握画程序框图的基本规则,能正确画出程序框图.学会灵活、正确地画程序框图.教学重点:灵活、正确地画程序框图.教学难点:运用程序框图解决实际问题.教学过程:一、复习准备:1. 说出下列程序框的名称和所实现功能.2.顺序结构条件结构循环结构程序框图结构说明按照语句的先后顺序,从上而下依次执行这些语句. 不具备控制流程的作用. 是任何一个算法都离不开的基本结构根据某种条件是否满足来选择程序的走向.当条件满足时,运行“是”的分支,不满足时,运行“否”的分支.从某处开始,按照一定的条件,反复执行某一处理步骤的情况. 用来处理一些反复进行操作的问题二、讲授新课:1. 教学程序框图①出示例1:任意给定3个正实数,判断其是否构成三角形,若构成三角形,则根据海伦公式计算其面积. 画出解答此问题算法的程序框图.(学生试写→共同订正→对比教材P7 例3、4 →试验结果)②设计一个计算2+4+6+…+100的值的算法,并画出程序框图.(学生试写→共同订正→对比教材P9 例5 →另一种循环结构)③循环语句的两种类型:当型和直到型.当型循环语句先对条件判断,根据结果决定是否执行循环体;直到型循环语句先执行一次循环体,再对一些条件进行判断,决定是否继续执行循环体. 两种循环语句的语句结构及框图如右.说明:“循环体”是由语句组成的程序段,能够完成一项工作.注意两种循环语句的区别及循环内部改变循环的条件.④练习:用两种循环结构,写出求100所有正约数的算法程序框图.2. 教学“鸡兔同笼”趣题:①“鸡兔同笼”,我国古代著名数学趣题之一,大约在1500年以前,《孙子算经》中记载了这个有趣的问题,书中描述为:今有雏兔同笼,上有三十五头,下有九十四足,问雏兔各几何?②学生分析其数学解法. (“站立法”,命令所有的兔子都站起来;或用二元一次方程组解答.)③欣赏古代解法:“砍足法”,假如砍去每只鸡、每只兔一半的脚,则“独脚鸡”,“双脚兔”. 则脚的总数47只;与总头数35的差,就是兔子的只数,即47-35=12(只).鸡35-12=23(只).④试用算法的程序框图解答此经典问题. (算法:鸡的头数为x,则兔的头数为35-x,结合循环语句与条件语句,判断鸡兔脚数2x+4(35-x)是否等于94.)三、巩固练习:1. 练习:100个和尚吃100个馒头,大和尚一人吃3个,小和尚3人吃一个,求大、小和尚各多少个?分析其算法,写出程序框图. 2. 作业:教材P12 A组1题.。
1.1.2程序框图
教学过程:
一、复习回顾
1、算法的概念:算法是解决某个特定问题的一种方法或一个有限过程。
2、算法的描述
(1)自然语言
(2)形式语言
(3)框图
二、程序框图的概念
1、通过例子:对任意三个实数a、b、c求出最大值。
写出算法(两种方法)
2、程序框图也叫流程图,是人们将思考的过程和工作的顺序进行分析、整理,用规定
的文字、符号、图形的组合加以直观描述的方法
3、程序框图的基本符号
起止框
输入输出框
处理框
判断框
连接点
循环框
用带有箭头的流程线连接图形符号
注释框
三、读图
例 1、读如下框图分析此算法的功能
四、画流程图的基本规则
1、使用标准的框图符号
2、从上倒下、从左到右
3、开始符号只有一个退出点,结束符号只有一个进入点,判断符号允许有多个退出点
4、判断可以是两分支结构,也可以是多分支结构
5、语言简练
6、循环框可以被替代
五、例子
1、输入3个实数按从大到小的次序排序
2、用二分法求方程的近似解
课堂练习:第10页,练习A,练习B
小结:本节介绍程序框图的概念,学习了画程序框图的规则
课后作业:第19页,习题1-1A第1、2题。
1.1.2 程序框图(第二、三课时)一、教学目标:1、知识与技能:掌握程序框图的概念;会用通用的图形符号表示算法,掌握算法的三个基本逻辑结构;掌握画程序框图的基本规则,能正确画出程序框图。
2、过程与方法:通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程;学会灵活、正确地画程序框图。
3、情感态度与价值观:通过本节的学习,使我们对程序框图有一个基本的了解;掌握算法语言的三种基本逻辑结构,明确程序框图的基本要求;认识到学习程序框图是我们学习计算机的一个基本步骤,也是我们学习计算机语言的必经之路。
二、重点与难点:重点是程序框图的基本概念、基本图形符号和3种基本逻辑结构,难点是能综合运用这些知识正确地画出程序框图。
三、学法与教学用具:1、通过上节学习我们知道,算法就是解决问题的步骤,在我们利用计算机解决问题的时候,首先我们要设计计算机程序,在设计计算机程序时我们首先要画出程序运行的流程图,使整个程序的执行过程直观化,使抽象的问题就得十分清晰和具体。
有了这个流程图,再去设计程序就有了依据,从而就可以把整个程序用机器语言表述出来,因此程序框图是我们设计程序的基本和开端。
2、我们在学习这部分内容时,首先要弄清各种图形符号的意义,明确每个图形符号的使用环境,图形符号间的联结方式。
例如“起止框”只能出现在整个流程图的首尾,它表示程序的开始或结束,其他图形符号也是如此,它们都有各自的使用环境和作用,这是我们在学习这部分知识时必须要注意的一个方面。
另外,在我们描述算法或画程序框图时,必须遵循一定的逻辑结构,事实证明,无论如何复杂的问题,我们在设计它们的算法时,只需用顺序结构、条件结构和循环结构这三种基本逻辑就可以了,因此我们必须掌握并正确地运用这三种基本逻辑结构。
3、教学用具:电脑,计算器,图形计算器四、教学设想:1、创设情境:算法可以用自然语言来描述,但为了使算法的程序或步骤表达得更为直观,我们更经常地用图形方式来表示它。
算法与程序框图教案第一章 算法初步§1.1 算法与程序框图【入门向导】“孙子问题”最早出现在我国《算经十书》之一的《孙子算经》中.其原文是:“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二.问物几何?答曰:二十三”.意思是说:今有一些事物,不知道它的数目,三个三个地数它们剩余二个,五个五个地数它们剩余三个,七个七个地数它们剩余二个,问这些事物的数目是多少?“孙子问题”相当于求关于x ,y ,z 的不定方程组⎩⎪⎨⎪⎧ m =3x +2m =5y +3m =7z +2的正整数解.《孙子算经》中给出了具体的解法,其步骤是:选定5×7的一个倍数,被3除余1,即70;选定3×7的一个倍数,被5除余1,即21;选定3×5的一个倍数,被7除余1,即15.然后按下式计算:m =70×2+21×3+15×2-105P .式中105为3,5,7的最小公倍数,P 为适当的整数,使得0<m ≤105,这里取P =2.你能想出一种算法,利用计算机来解决上述问题吗?1.对算法含义的理解(1)算法是机械的算法的设计要“面面俱到”不能省略任何一个小小的步骤,有时可能要进行大量重复计算,但只要按步骤一步一步地执行,总能得到结果.算法的这种机械化的特点,在设计出算法后,便于把具体过程交给计算机去完成.(2)算法是普遍存在的实际上处理任何问题都需要算法,如国际象棋的棋谱、走法、胜负的评判标准,邮寄物品的相关手续,求一个二元一次方程组的解等等.(3)求解某个具体问题的算法一般是不唯一的算法实际上是解决问题的步骤和方法,求解问题的出发点不同,就会得到不同的算法.如求二元一次方程组的解有代入消元法和加减消元法,但不同的算法可能会有“优劣”之分.例1 早上从起床到出门需要洗脸刷牙(5 min)、刷水壶(2 min)、烧水(8 min)、泡面(3 min)、吃饭(10 min)、听广播(8 min)几个步骤.从下列选项中选出最好的一种流程( )A .1.洗脸刷牙、2.刷水壶、3.烧水、4.泡面、5.吃饭、6.听广播B .1.刷水壶、2.烧水同时洗脸刷牙、3.泡面、4.吃饭、5.听广播C .1.刷水壶、2.烧水同时洗脸刷牙、3.泡面、4.吃饭同时听广播D .1.吃饭同时听广播、2.泡面、3.烧水同时洗脸刷牙、4.刷水壶分析 处理问题的算法要求能够一步一步地执行,好的算法还要花费时间少.解析 A 中洗脸刷牙可以在烧水的过程中进行,听广播可以和吃饭同时进行;D 中吃饭要在刷水壶、烧水、泡面之后.答案 C2.算法与数学问题解法的区别与联系(1)联系算法与解法是一般与特殊的关系,也是抽象与具体的关系.如教材中由具体的二元一次方程组的求解过程(解法)出发,归纳出了二元一次方程组求解的步骤;同时指出,这样的求解步骤也适合有限制条件的二元一次方程组,这些步骤就构成了二元一次方程组的算法.算法的获得要借助一般意义上具体问题的求解方法,而任何一个具体问题都可利用这类问题的一般算法解决.(2)区别算法是解决某一类问题所需要的程序和步骤的统称,也可理解为数学中的“通法通解”;而解法是解决某一个具体问题的过程和步骤,是具体的解题过程.例2 给出求解方程组⎩⎪⎨⎪⎧2x +y =7. ①4x +5y =11 ②的一个算法. 解 方法一 (消元法)S1 ②-①×2,得3y =-3,③S2 解③得y =-1;④S3 将④代入①,得x =4;S4 输出x =4,y =-1.方法二 (公式法)S1 计算D =2×5-4×1=6;S2 因为D =6,所以x =5×7-11×16=4,y =11×2-7×46=-1; S3 输出x =4,y =-1.点评 本题中的方法二,直接利用高斯消去法的算法步骤,显得更为简捷.3.程序框图(1)与自然语言相比用程序框图表示算法的优越性用自然语言表示算法的步骤有明确的顺序性,但在处理条件结构或循环结构这样的问题时比较困难,不够直观、准确.程序框图是表示算法的另一种形式,它的结构清晰,步骤准确,有时能解决自然语言不易表达的问题.(2)画程序框图的规则画程序框图的规则应是大家共同遵守的一些规则,目的是为了使大家彼此之间能读懂各自画的框图.①使用标准的框图符号;②框图一般按从上到下,从左到右的方向来画;③除判断框外,大多数框图符号只有一个进入点和一个退出点,判断框是唯一具有超过一个退出点的符号;④在图形符号内描述语言要简练、清楚.例3已知圆的半径,设计一个算法求圆的周长和面积的近似值,并用程序框图表示.分析解答本题可由圆的周长公式和面积公式直接求解,其中圆的半径可由算法输入.解算法设计:S1输入圆的半径R.S2计算L=2πR.S3计算S=πR2.S4输出L和S.程序框图:1.算法的确定性理解不到位例1求2+4+6+8+…+100的算法.错解算法:S1计算2+4+6+8+ (100)S2输出第一步中的结果.错解辨析对于连加连乘的问题,不能直接得到答案,应当逐步进行.正解算法:S1计算2+4得到6;S2将第一步的结果与6相加得到12;S3将第二步的结果与8相加得到20;S4如此继续下去,一直加到100;S5输出运算结果.2.程序框图中循环结构功能、条件出错例2 如图所示是某一算法的程序框图,根据该框图指出这一算法的功能.错解 求S =12+14+16+18+110的值. 正解 在该程序框图中,S 与n 为两个累加变量,k 为计数变量,所以该算法的功能是求12+14+16+…+120的值.1.按部就班法此法是基本方法,要求按问题的解题步骤“按部就班”地做,每一步都有唯一的结果,且在有限步之后得出结果. 例1 写出作∠ABC 的平分线的一个算法.分析 解决这个问题,只需按作图方法“按部就班”地设计算法.解 S1 以B 为圆心,以任意长为半径画弧,与边BA 交于M 点,与边BC 交于N 点.S2 以M 为圆心,以大于12MN 的长d 为半径画弧.S3 以N 为圆心,以大于12MN 的长d 为半径画弧.S4 取第二、三两步所得的弧的交点P .S5 过B ,P 作射线BP ,射线BP 即为∠ABC 的平分线.2.公式法利用现有公式解决问题是设计算法的重要思路.例2 计算上底为2,下底为4,高为5的梯形的面积.分析 根据梯形的面积公式S =12(a +b )h .其中a 是上底,b 是下底,h 是高,只需令a=2,b=4,h=5,代入公式即可.解算法如下:S1a=2,b=4,h=5;S2S=12(a+b)h;S3输出S.3.循环法有些问题需要重复计算,而这正是计算机的强项,因此我们可以利用循环来实现.例3设计出一个求23+43+63+…+603的算法.解S1p=0,i=2.S2p=p+i3.S3i=i+2.S4如果i>60,算法结束,否则,返回第二步.S5输出p.1.抓特征组成任何一个程序框图的三要素是“四框”、“一线”加“文字说明”.“四框”即起、止框、输入(出)框、处理框、判断框.“一线”即流程线,任意两个程序框之间都存在流程线.“文字说明”即在框图内加以说明的文字、算式等,这是每个框图不可缺少的内容.2.明规则程序框图的画法规则是:①用标准,即使用标准的图形符号;②按顺序,即框图一般按照从上到下、从左到右的顺序画;③看出入,即大多数程序框只有一个入口和一个出口,判断框是唯一具有两个出口的图框,条件分支结构中要在出口处标明“是”或“否”;④明循环,即循环结构要注意变量的初始值及循环终止条件;⑤辨流向,即流程线的箭头表示执行的方向,不可缺少;⑥简说明,即在程序框内的描述语言要简练清晰.3.依步骤画程序框图的总体步骤是:第一步,先设计算法,因为算法的设计是画程序框图的基础,所以在画程序框图前,首先应在稿纸上写出相应的算法步骤,并分析算法需要哪些基本逻辑结构;第二步,再把算法步骤转化为对应的程序框图,在这种转化过程中往往需要考虑很多细节,是一个将算法“细化”的过程.例4某商场进行优惠促销:若购物金额x在500元以上(不包括500元),则全部货款打8折;若购物金额x在300元以上(不包括300元)500元以下(包括500元),则全部货款打9折;否则,不打折.画出程序框图,要求输入购物金额x元,能输出实际交款额.分析由题意,实际交款额y与购物金额x之间的函数关系是y=⎩⎪⎨⎪⎧ x , 0≤x ≤300,0.9x ,300<x ≤500,0.8x ,x >500.因为它需对x 进行三次判断,所以算法含有两个条件结构,写出算法步骤如下.解 算法如下:S1 输入购物金额x .S2 判断x ≤300是否成立.若是,则y =x ,执行第四步;否则,进入第三步.S3 判断x ≤500是否成立.若是,则y =0.9x ;否则,y =0.8x .S4 输出y ,算法结束.画法步骤 ①画顺序结构图,即起、止框及输入框,并且流程线连接(如图中①);②画条件结构图,即画判断框,里面填写“x ≤300”(如图中②).对于“是”画处理框并填入“y =x ”,对于“否”流向下一个判断框;③再画条件结构图,即画判断框,里面填写“x ≤500”对于“是”画处理框并填入“y =0.9x ”,对于“否”画处理框并填入“y =0.8x ”(如图中③);④画一个总的输出框并输出y ,以及起、止框表示算法结束(如图中④).最后,合成整个算法程序框图.1.(天津)阅读下边的程序框图,运行相应的程序,则输出i 的值为( )A .3B .4C .5D .6解析 i =1时,a =2;i =2时,a =5;i =3时,a =16;当i =4时,a =65>50.即条件a >50成立,所以输出的i 的值为4.答案 B2.(湖南)若执行如图所示的程序框图,输入x 1=1,x 2=2,x 3=3,x =2,则输出的数等于______.解析 由框图的算法功能可知,输出的数为:S =(1-2)2+(2-2)2+(3-2)23=23.答案 233.(日照模拟)执行下边的程序框图,输出的T =________.解析 按照程序框图依次执行为S =5,n =2,T =2;S =10,n =4,T =2+4=6;S =15,n =6,T =6+6=12;S =20,n =8,T =12+8=20;S =25,n =10,T =20+10=30>S ,输出T =30.答案 304.(威海调研)某算法的程序框图如图所示,则输出量y 与输入量x 满足的关系式是__________.解析 由题意知,该程序框图表达的是一个分段函数y =⎩⎪⎨⎪⎧2x , x ≤1,x -2,x >1. 答案 y =⎩⎪⎨⎪⎧2x , x ≤1,x -2,x >1 5.(抚顺模拟)某篮球队6名主力队员在最近三场比赛中投进的三分球个数如下表所示:下图是统计该则图中判断框应填________,输出的s =________.解析该程序框图是统计6名队员在最近三场比赛中投进的三分球总数,因此图中判断框应填i≤6,输出的s=a1+a2+…+a6.答案i≤6a1+a2+a3+a4+a5+a6。
算法与程序框图.1请.从下面具体的例子中说明几个基本的程序框和它们各自表示的功能,并把它填在相应的括号内2. 下面程序框图输出的S表示什么?虚线框表示什么结构?3. 下面是描述求一元二次方程ax2+bx+c=0的根的过程的程序框图,请问虚线框内是什么结构?4. 下面循环结构的程序框图中,哪一个是当型循环的程序框图?哪一个是直到型循环的程序框图?(1)(2):5. 某快递公司规定甲、乙两地之间物品的托运费用根据下列方法计算:f=⎩⎨⎧>⨯-+⨯50≤).50(85.0)50(53.050),(53.0ωωωω其中f(单位:元)为托运费,ω为托运物品的重量(单位:千克),试写出一个计算费用f算法,并画出相应的程序框图.6. 如果学生的成绩大于或等于60分,则输出“及格”,否则输出“不及格”.用程序框图表示这一算法过程.7. 火车站对乘客退票收取一定的费用,具体办法是:按票价每10元(不足10元按10元计算)核收2元;2元以下的票不退.试写出票价为x元的车票退掉后,返还的金额y元的算法的程序框图.8. 画出解不等式ax+b>0(b≠0)的程序框图.参考答案1.一般画成圆角矩形 一般画成画成带箭头的流线处理框(执行框):赋值、计算2. 求半径为5的圆的面积的算法的程序框图,虚线框是一个顺序结构.3. 虚线框内是一个条件结构.4. (1)当型循环的程序框图(2)直到型循环的程序框图5 . 解:算法:第一步:输入物品重量ω;第二步:如果ω≤50,那么f =0.53ω,否则,f = 50×0.53+(ω-50)×0.85;第三步:输出物品重量ω和托运费f..相应的程序框图.6. 解:. 7. 解:8. 解:。
算法与程序框图教学目标:明确算法的含义,熟悉算法的三种基本结构。
教学重点:算法的基本知识与算法对应的程序框图的设计.教学难点:与算法对应的程序框图的设计及算法程序的编写.教学过程:1.算法的定义:广义的算法是指完成某项工作的方法和步骤,现代意义的算法是指可以用计算机来解决的某一类问题的程序和步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.2.流程图的概念:流程图是用一些规定的图形、指向线及简单的文字说明来表示算法几程序结构的一种图形程序.它直观、清晰,便于检查和修改.其中,图框表示各种操作的类型,图框中的文字和符号表示操作的内容,带箭头的流程线(指向线)表示操作的先后次序.构成流程图的图形符号及其作用3.规范流程图的表示:①使用标准的框图符号;②框图一般按从上到下、从左到右的方向画,流程线要规范;③除判断框外,大多数框图符号只有一个进入点和一个退出点.④在图形符号内描述的语言要非常简练、清楚.4、算法的三种基本逻辑结构:课本中例题的讲解得出三种基本逻辑结构:顺序结构、条件结构、循环结构(1)顺序结构:顺序结构描述的是是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的。
例1:已知一个三角形的三边分别为2、3、4,利用海伦公式设计一个算法,求出它的面积,并画出算法的程序框图。
算法分析:这是一个简单的问题,只需先算出p的值,再将它代入公式,最后输出结果,只用顺序结构就能够表达出算法。
解:程序框图:点评:顺序结构是由若干个依次执行的步骤组成的,是任何一个算法都离不开的基本结构。
(2)条件结构:根据条件选择执行不同指令的控制结构。
例2:任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在,画出这个算法的程序框图。
算法分析:判断分别以这3个数为三边边长的三角形是否存在,只需要验收这3个数当中任意两个数的和是否大于第3个数,这就需要用到条件结构。
1.1.1算法基本逻辑结构——循环结构
【教学目标】
1.通过对具体实例的分析和解决,使学生体验算法的思想在生活中的应用,并
由此实例出发,使学生理解循环结构的概念,
2.通过分析两种循环结构的结构差异,准确区分两种循环结构,并能运用两种
循环结构框图解决具体数学问题,从中体会循环结构的三要素,即循环变量初始值,循环体和循环控制条件对循环结构起到的决定性作用
3.情感态度与价值观:通过本节的探究性学习,培养严谨的学习态度以及勇于
探索的学习精神。
【教学重点难点】
教学重点:理解循环结构的概念,并能准确区分两种循环结构,明确循环结构三要素.
教学难点:循环结构三要素的变化对循环过程及结果产生的影响.
【学前准备】:多媒体,预习例题
算法的概念
【教学目标】
(1)了解算法的含义,体会算法的思想;
(2)能够用自然语言叙述算法;
(3)掌握正确的算法应满足的要求;
(4)会写出解线性方程(组)的算法;
(5)会写出一个求有限整数序列中的最大值的算法;
(6)会应用Scilab求解方程组。
【教学重难点】
重点:算法的含义、解二元一次方程组和判断一个数为质数的算法设计。
难点:把自然语言转化为算法语言。
【学前准备】:多媒体,预习例题电脑,计算器,图形计算器。
人教版高中数学必修三电子课本篇一:人教版高一数学必修三课本教材word版第一章算法初步第一章算法初步第一节算法与程序框图 1.1.1 算法概念:实际上,算法对我们来说并不陌生(回顾二元一次方程组我们可以归纳出以下步骤: 第一步,???×2,第三步,?,?×2,得得?x?2y??1??2x?y?1? ?的求解过程,5x?1?第二步,解?,第四步,解?,得得x?y?115 355y?3 ??x?????y???1535第五步,得到方程组的解为思考,能写出求解一般的二元一次方程组的步骤吗, 对于一般的二元一次方程组?a1x?b1y?c1??a2x?b2y?c2? ?其中a1b2?a2b1?0,可以写出类似的求解步骤:得第一步,?×b2,?×b1,第二步,解?第三步,?×a1,?×a2 第四步,解?(a1b2?a2b1)x?b2c1?b1c2 ?得x?b2c1?b1c2a1b2?a2b1得(a1b2?a2b1)y?a1c2?a2c1 ?y?2a1c2?a2c1a1b2?a2b1得第五步,得到方程组的解为得??x????y???b2c1?b1c2a1b2?a2b1a1c2?a2c1a1b2?a2b1上述步骤构成了解二元一次方程组的一个算法,我们可以进一步根据这一算法编制计算机程序,让计算机来解二元一次方程组。
算法? (algorithm)一词出现于12 世纪,指的是用阿拉伯数字进行算术运算的过程。
在数学中,算法通常是指按照一定规则解决某一类问题的明确和有限的步骤。
现在,算法通常可以编成计算机程序,让计算机执行并解决问题( 例1 (1)设计一个算法,判断7 是否为质数(2)设计一个算法,判断35 是否为质数只能被1和自身整除的大于1的正是叫质数算法分析:(1)根据质数的定义,可以这样判断:依次用 26 除7 ,如果它们中有一个能整除7,则7 不是质数。
1.1.2 程序框图与算法的基本逻辑结构(7)说出连接点的图形符号与功能.(8)总结几个基本的程序框、流程线和它们表示的功能.(9)什么是顺序结构?讨论结果:(1)程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的图形.在程序框图中,一个或几个程序框的组合表示算法中的一个步骤;带有方向箭头的流程线将程序框连接起来,表示算法步骤的执行顺序.(2)椭圆形框:表示程序的开始和结束,称为终端框(起止框).表示开始时只有一个出口;表示结束时只有一个入口.(3)平行四边形框:表示一个算法输入和输出的信息,又称为输入、输出框,它有一个入口和一个出口.(4)矩形框:表示计算、赋值等处理操作,又称为处理框(执行框),它有一个入口和一个出口.(5)菱形框:是用来判断给出的条件是否成立,根据判断结果来决定程序的流向,称为判断框,它有一个入口和两个出口.(6)流程线:表示程序的流向.(7)圆圈:连接点.表示相关两框的连接处,圆圈内的数字相同的含义表示相连接在一起.(8)总结如下表.图形符号名称功能终端框(起止框)表示一个算法的起始和结束输入、输出框表示一个算法输入和输出的信息处理框(执行框)赋值、计算判断框判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”流程线连接程序框连接点连接程序框图的两部分(9)很明显,顺序结构是由若干个依次执行的步骤组成的,这是任何一个算法都离不开的基本结构.三种逻辑结构可以用如下程序框图表示:顺序结构条件结构循环结构应用示例例 1 请用程序框图表示前面讲过的“判断整数n(n>2)是否为质数”的算法.解:程序框图如下:点评:程序框图是用图形的方式表达算法,使算法的结构更清楚,步骤更直观也更精确.这里只是让同学们初步了解程序框图的特点,感受它的优点,暂不要求掌握它的画法. 变式训练观察下面的程序框图,指出该算法解决的问题.解:这是一个累加求和问题,共99项相加,该算法是求100991431321211⨯++⨯+⨯+⨯ 的值. 例2 已知一个三角形三条边的边长分别为a ,b ,c ,利用海伦—秦九韶公式设计一个计算三角形面积的算法,并画出程序框图表示.(已知三角形三边边长分别为a,b,c ,则三角形的面积为S=))()((c p b p a p p ---),其中p=2cb a ++.这个公式被称为海伦—秦九韶公式)算法分析:这是一个简单的问题,只需先算出p 的值,再将它代入分式,最后输出结果.因此只用顺序结构应能表达出算法. 算法步骤如下:第一步,输入三角形三条边的边长a,b,c. 第二步,计算p=2cb a ++. 第三步,计算S=))()((c p b p a p p ---.第四步,输出S. 程序框图如下:点评:很明显,顺序结构是由若干个依次执行的步骤组成的,它是最简单的逻辑结构,它是任何一个算法都离不开的基本结构. 变式训练下图所示的是一个算法的流程图,已知a 1=3,输出的b=7,求a 2的值.解:根据题意221a a +=7, ∵a 1=3,∴a 2=11.即a 2的值为11.例3 写出通过尺轨作图确定线段AB 的一个5等分点的程序框图.解:利用我们学过的顺序结构得程序框图如下:点评:这个算法步骤具有一般性,对于任意自然数n,都可以按照这个算法的思想,设计出确定线段的n等分点的步骤,解决问题,通过本题学习可以巩固顺序结构的应用.知能训练有关专家建议,在未来几年内,中国的通货膨胀率保持在3%左右,这将对我国经济的稳定有利无害.所谓通货膨胀率为3%,指的是每年消费品的价格增长率为3%.在这种情况下,某种品牌的钢琴2004年的价格是10 000元,请用流程图描述这种钢琴今后四年的价格变化情况,并输出四年后的价格.解:用P表示钢琴的价格,不难看出如下算法步骤:2005年P=10 000×(1+3%)=10 300;2006年P=10 300×(1+3%)=10 609;2007年P=10 609×(1+3%)=10 927.27;2008年P=10 927.27×(1+3%)=11 255.09;因此,价格的变化情况表为:年份2004 2005 2006 2007 2008钢琴的10 000 10 300 10 609 10 927.27 11 255.09价格程序框图如下:点评:顺序结构只需严格按照传统的解决数学问题的解题思路,将问题解决掉.最后将解题步骤 “细化”就可以.“细化”指的是写出算法步骤、画出程序框图. 拓展提升如下给出的是计算201614121++++ 的值的一个流程图,其中判断框内应填入的条件是______________.答案:i>10. 课堂小结(1)掌握程序框的画法和功能.(2)了解什么是程序框图,知道学习程序框图的意义.(3)掌握顺序结构的应用,并能解决与顺序结构有关的程序框图的画法. 作业习题1.1A 1.第2课时条件结构导入新课(直接导入)前面我们学习了顺序结构,顺序结构像是一条没有分支的河流,奔流到海不复回,事实上多数河流是有分支的,今天我们开始学习有分支的逻辑结构——条件结构.推进新课新知探究提出问题(1)举例说明什么是分类讨论思想?(2)什么是条件结构?(3)试用程序框图表示条件结构.(4)指出条件结构的两种形式的区别.讨论结果:(1)例如解不等式ax>8(a≠0),不等式两边需要同除a,需要明确知道a的符号,但条件没有给出,因此需要进行分类讨论,这就是分类讨论思想. (2)在一个算法中,经常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向.条件结构就是处理这种过程的结构.(3)用程序框图表示条件结构如下.条件结构:先根据条件作出判断,再决定执行哪一种操作的结构就称为条件结构(或分支结构),如图1所示.执行过程如下:条件成立,则执行A框;不成立,则执行B框.图1 图2注:无论条件是否成立,只能执行A、B之一,不可能两个框都执行.A、B两个框中,可以有一个是空的,即不执行任何操作,如图2.(4)一种是在两个“分支”中均包含算法的步骤,符合条件就执行“步骤A”,否则执行“步骤B”;另一种是在一个“分支”中均包含算法的步骤A,而在另一个“分支”上不包含算法的任何步骤,符合条件就执行“步骤A”,否则执行这个条件结构后的步骤.应用示例例1 任意给定3个正实数,设计一个算法,判断以这3个正实数为三边边长的三角形是否存在,并画出这个算法的程序框图.算法分析:判断以3个任意给定的正实数为三条边边长的三角形是否存在,只需验证这3个数中任意两个数的和是否大于第3个数.这个验证需要用到条件结构.算法步骤如下:第一步,输入3个正实数a,b,c.第二步,判断a+b>c,b+c>a,c+a>b是否同时成立.若是,则存在这样的三角形;否则,不存在这样的三角形.程序框图如右图:点评:根据构成三角形的条件,判断是否满足任意两边之和大于第三边,如果满足则存在这样的三角形,如果不满足则不存在这样的三角形.这种分类讨论思想是高中的重点,在画程序框图时,常常遇到需要讨论的问题,这时要用到条件结构.例2 设计一个求解一元二次方程ax2+bx+c=0的算法,并画出程序框图例3 设计算法判断一元二次方程ax2+bx+c=0是否有实数根,并画出相应的程序框图.解:算法步骤如下:第一步,输入3个系数:a,b,c.第二步,计算Δ=b2-4ac.第三步,判断Δ≥0是否成立.若是,则输出“方程有实根”;否则,输出“方程无实根”.结束算法.相应的程序框图如右:点评:根据一元二次方程的意义,需要计算判别式Δ=b2-4ac的值.再分成两种情况处理:(1)当Δ≥0时,一元二次方程有实数根;(2)当Δ<0时,一元二次方程无实数根.该问题实际上是一个分类讨论问题,根据一元二次方程系数的不同情况,最后结果就不同.因而当给出一个一元二次方程时,必须先确定判别式的值,然后再用判别式的值的取值情况确定方程是否有解.该例仅用顺序结构是办不到的,要对判别式的值进行判断,需要用到条件结构.例4 (1)设计算法,求ax+b=0的解,并画出流程图.解:对于方程ax+b=0来讲,应该分情况讨论方程的解.我们要对一次项系数a 和常数项b 的取值情况进行分类,分类如下:(1)当a≠0时,方程有唯一的实数解是ab -; (2)当a=0,b=0时,全体实数都是方程的解;(3)当a=0,b≠0时,方程无解.联想数学中的分类讨论的处理方式,可得如下算法步骤:第一步,判断a≠0是否成立.若成立,输出结果“解为ab -”. 第二步,判断a=0,b=0是否同时成立.若成立,输出结果“解集为R ”. 第三步,判断a=0,b≠0是否同时成立.若成立,输出结果“方程无解”,结束算法.程序框图如下:点评:这是条件结构叠加问题,条件结构叠加,程序执行时需依次对“条件1”“条件2”“条件3”……都进行判断,只有遇到能满足的条件才执行该条件对应的操作.知能训练设计算法,找出输入的三个不相等实数a 、b 、c 中的最大值,并画出流程图.解:算法步骤:第一步,输入a ,b ,c 的值.第二步,判断a>b 是否成立,若成立,则执行第三步;否则执行第四步. 第三步,判断a>c 是否成立,若成立,则输出a ,并结束;否则输出c ,并结束.第四步,判断b>c 是否成立,若成立,则输出b ,并结束;否则输出c ,并结束.程序框图如下:点评:条件结构嵌套与条件结构叠加的区别:(1)条件结构叠加,程序执行时需依次对“条件1”“条件2”“条件3”……都进行判断,只有遇到能满足的条件才执行该条件对应的操作.(2)条件结构的嵌套中,“条件2”是“条件1”的一个分支,“条件3”是“条件2”的一个分支……依此类推,这些条件中很多在算法执行过程中根据所处的分支位置不同可能不被执行.(3)条件结构嵌套所涉及的“条件2”“条件3”……是在前面的所有条件依次一个一个的满足“分支条件成立”的情况下才能执行的此操作,是多个条件同时成立的叠加和复合.例 5 “特快专递”是目前人们经常使用的异地邮寄信函或托运物品的一种快捷方式.某快递公司规定甲、乙两地之间物品的托运费用根据下列方法计算:f=⎩⎨⎧>⨯-+⨯≤).50(,85.0)50(53.050),50(,53.0ωωωω其中f(单位:元)为托运费,ω为托运物品的重量(单位:千克).试画出计算费用f的程序框图.分析:这是一个实际问题,根据数学模型可知,求费用f的计算公式随物品重量ω的变化而有所不同,因此计算时先看物品的重量,在不同的条件下,执行不同的指令,这是条件结构的运用,是二分支条件结构.其中,物品的重量通过输入的方式给出.解:算法程序框图如右图:拓展提升有一城市,市区为半径为15 km的圆形区域,近郊区为距中心15—25 km的范围内的环形地带,距中心25 km以外的为远郊区,如右图所示.市区地价每公顷100万元,近郊区地价每公顷60万元,远郊区地价为每公顷20万元,输入某一点的坐标为(x,y),求该点的地价.分析:由该点坐标(x,y),求其与市中心的距离r=22yx+,确定是市区、近郊区,还是远郊区,进而确定地价p.由题意知,p=⎪⎩⎪⎨⎧>≤<≤<.25,20,2515,60,150,100rrr解:程序框图如下:课堂小结(1)理解两种条件结构的特点和区别.(2)能用学过的两种条件结构解决常见的算法问题.作业习题1.1A组3.第3课时循环结构导入新课(直接导入)前面我们学习了顺序结构,顺序结构像一条没有分支的河流,奔流到海不复回;上一节我们学习了条件结构,条件结构像有分支的河流最后归入大海;事实上很多水系是循环往复的,今天我们开始学习循环往复的逻辑结构——循环结构.推进新课新知探究提出问题(1)请大家举出一些常见的需要反复计算的例子.(2)什么是循环结构、循环体?(3)试用程序框图表示循环结构.(4)指出两种循环结构的相同点和不同点.讨论结果:(1)例如用二分法求方程的近似解、数列求和等.(2)在一些算法中,经常会出现从某处开始,按照一定的条件反复执行某些步骤的情况,这就是循环结构.反复执行的步骤称为循环体.(3)在一些算法中要求重复执行同一操作的结构称为循环结构.即从算法某处开始,按照一定条件重复执行某一处理的过程.重复执行的处理步骤称为循环体.循环结构有两种形式:当型循环结构和直到型循环结构.1°当型循环结构,如图(1)所示,它的功能是当给定的条件P成立时,执行A框,A框执行完毕后,返回来再判断条件P是否成立,如果仍然成立,返回来再执行A框,如此反复执行A框,直到某一次返回来判断条件P不成立时为止,此时不再执行A框,离开循环结构.继续执行下面的框图.2°直到型循环结构,如图(2)所示,它的功能是先执行重复执行的A框,然后判断给定的条件P是否成立,如果P仍然不成立,则返回来继续执行A框,再判断条件P是否成立.继续重复操作,直到某一次给定的判断条件P时成立为止,此时不再返回来执行A框,离开循环结构.继续执行下面的框图.见示意图:当型循环结构直到型循环结构(4)两种循环结构的不同点:直到型循环结构是程序先进入循环体,然后对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环.当型循环结构是在每次执行循环体前,先对条件进行判断,当条件满足时,执行循环体,否则终止循环.两种循环结构的相同点: 两种不同形式的循环结构可以看出,循环结构中一定包含条件结构,用于确定何时终止执行循环体.上述程序框图用的是当型循环结构,如果用直到型循环结构表示,则程序框图如下:点评:这是一个典型的用循环结构解决求和的问题,有典型的代表意义,可把它作为一个范例,仔细体会三种逻辑结构在程序框图中的作用,学会画程序框图.变式训练已知有一列数1,,43,32,21+n n ,设计框图实现求该列数前20项的和.分析:该列数中每一项的分母是分子数加1,单独观察分子,恰好是1,2,3,4,…,n ,因此可用循环结构实现,设计数器i ,用i=i+1实现分子,设累加器S ,用S=1++i i S ,可实现累加,注意i 只能加到20.解:程序框图如下:方法一:方法二:点评:在数学计算中,i=i+1不成立,S=S+i只有在i=0时才能成立.在计算机程序中,它们被赋予了其他的功能,不再是数学中的“相等”关系,而是赋值关系.变量i用来作计数器,i=i+1的含义是:将变量i的值加1,然后把计算结果再存贮到变量i中,即计数器i在原值的基础上又增加了1.变量S作为累加器,来计算所求数据之和.如累加器的初值为0,当第一个数据送到变量i中时,累加的动作为S=S+i,即把S的值与变量i 的值相加,结果再送到累加器S中,如此循环,则可实现数的累加求和.例2 某厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%,设计一个程序框图,输出预计年生产总值超过300万元的最早年份.算法分析:先写出解决本例的算法步骤:第一步,输入2005年的年生产总值.第二步,计算下一年的年生产总值.第三步,判断所得的结果是否大于300,若是,则输出该年的年份,算法结束;否则,返回第二步.由于“第二步”是重复操作的步骤,所以本例可以用循环结构来实现.我们按照“确定循环体”“初始化变量”“设定循环控制条件”的顺序来构造循环结构.(1)确定循环体:设a为某年的年生产总值,t为年生产总值的年增长量,n为年份,则循环体为t=0.05a,a=a+t,n=n+1.(2)初始化变量:若将2005年的年生产总值看成计算的起始点,则n 的初始值为2005,a的初始值为200.(3)设定循环控制条件:当“年生产总值超过300万元”时终止循环,所以可通过判断“a>300”是否成立来控制循环.程序框图如下:知能训练由相应的程序框图如右图,补充完整一个计算1+2+3+…+100的值的算法.(用循环结构)第一步,设i的值为_____________.第二步,设sum的值为_____________.点评:(1)如果算法问题里涉及的运算进行了许多次重复的操作,且先后参与运算的数之间有相同的规律,就可引入变量循环参与运算(我们称之为循环变量),应用于循环结构.在循环结构中,要注意根据条件设计合理的计数变量、累加和累乘变量及其个数等,特别要求条件的表述要恰当、精确.(2)累加变量的初始值一般取0,而累乘变量的初始值一般取1.课堂小结(1)熟练掌握两种循环结构的特点及功能.(2)能用两种循环结构画出求和等实际问题的程序框图,进一步理解学习算法的意义.作业习题1.1A组2.第4课时程序框图的画法导入新课(直接导入)前面我们学习了顺序结构、条件结构、循环结构,今天我们系统学习程序框图的画法.推进新课新知探究提出问题(1)请大家回忆顺序结构,并用程序框图表示.(2)请大家回忆条件结构,并用程序框图表示.(2)算法步骤中的“第四步”可以用条件结构来表示(如下图).在这个条件结构中,“否”分支用“a=m”表示含零点的区间为[m,b],并把这个区间仍记成[a,b];“是”分支用“b=m ”表示含零点的区间为[a,m],同样把这个区间仍记成[a,b].(3)算法步骤中的“第五步”包含一个条件结构,这个条件结构与“第三步”“第四步”构成一个循环结构,循环体由“第三步”和“第四步”组成,终止循环的条件是“|a-b|<d或f(m)=0”.在“第五步”中,还包含由循环结构与“输出m”组成的顺序结构(如下图).(4)将各步骤的程序框图连接起来,并画出“开始”与“结束”两个终端框,就得到了表示整个算法的程序框图(如下图).点评:在用自然语言表述一个算法后,可以画出程序框图,用顺序结构、条件结构和循环结构来表示这个算法,这样表示的算法清楚、简练,便于阅读和交流.例 2 相传古代的印度国王要奖赏国际象棋的发明者,问他需要什么.发明者说:陛下,在国际象棋的第一个格子里面放1粒麦子,在第二个格子里面放2粒麦子,第三个格子放4粒麦子,以后每个格子中的麦粒数都是它前一个格子中麦粒数的二倍,依此类推(国际象棋棋盘共有64个格子),请将这些麦子赏给我,我将感激不尽.国王想这还不容易,就让人扛了一袋小麦,但不到一会儿就没了,最后一算结果,全印度一年生产的粮食也不够.国王很奇怪,小小的“棋盘”,不足100个格子,如此计算怎么能放这么多麦子?试用程序框图表示此算法过程.解:将实际问题转化为数学模型,该问题就是要求1+2+4+……+263的和. 程序框图如下:点评:对于开放式探究问题,我们可以建立数学模型(上面的题目可以与等比数列的定义、性质和公式联系起来)和过程模型来分析算法,通过设计算法以及语言的描述选择一些成熟的办法进行处理.例3 乘坐火车时,可以托运货物.从甲地到乙地,规定每张火车客票托运费计算方法是:行李质量不超过50 kg 时按0.25元/kg ;超过50 kg而不超过100 kg 时,其超过部分按0.35元/kg ;超过100 kg 时,其超过部分按0.45元/kg .编写程序,输入行李质量,计算出托运的费用.分析:本题主要考查条件语句及其应用.先解决数学问题,列出托运的费用关于行李质量的函数关系式.设行李质量为x kg ,应付运费为y 元,则运费公式为:y=⎪⎩⎪⎨⎧>-+⨯+⨯≤<-+⨯≤<,100),100(45.05035.05025.0,10050),50(35.05025.0,500,25.0x x x x x x整理得y=⎪⎩⎪⎨⎧>-≤<-≤<.100,1545.0,10050,535.0,500,25.0x x x x x x要计算托运的费用必须对行李质量分类讨论,因此要用条件语句来实现.解:算法分析:第一步,输入行李质量x.第二步,当x≤50时,计算y=0.25x ,否则,执行下一步.第三步,当x≤100,计算y=0.35x -5,否则,计算y=0.45x -15.第四步,输出y .程序框图如下:知能训练5的算法,画出算法的程序设计一个用有理数数幂逼近无理指数幂2框图.解:算法步骤:第一步,给定精确度d,令i=1.第二步,取出2的到小数点后第i位的不足近似值,记为a;取出2的到小数点后第i位的过剩近似值,记为b.第三步,计算m=5b-5a.5的近似值为5a;否则,将i的值增加1,返回第四步,若m<d,则得到2第二步.5的近似值为5a.第五步,得到2程序框图如下:拓展提升求)410(4141414个共++++,画出程序框图.分析:如果采用逐步计算的方法,利用顺序结构来实现,则非常麻烦,由于前后的运算需重复多次相同的运算,所以应采用循环结构,可用循环结构来实现其中的规律.观察原式中的变化的部分及不变项,找出总体的规律是4+x1,要实现这个规律,需设初值x=4.解:程序框图如下:。
2015高中数学 1.1算法与程序框图教学设计 新人教A 版必修3一. 引入:以同学们耳熟能详的鸡兔同笼问题引入:“一群小兔一群鸡,两群合到一群里,要数腿共48,要数脑袋整17,多少小兔多少鸡?”让学生体会到算法并不陌生,通过算术两种不同的方法,让学生体会算法的不唯一性.进而引出求解二元一次方程组的算法.引例:解二元一次方程组: ⎩⎨⎧=+-=-②y x ①y x 1212 分析:解二元一次方程组的主要思想是消元的思想,有代入消元和加减消元两种消元的方法,下面用加减消元法写出它的求解过程.解:第一步:② - ①×2,得: 5y=3; ③第二步:解③得 53=y ; 第三步:将53=y 代入①,得 51=x . 评注:1.以上求解的步骤就是解二元一次方程组的算法.2.本题的算法是由加减消元法与带入消元求解的,这个算法也适合一般的二元一次方程组的解法.引例:写出求方程组()01221222111≠-⎩⎨⎧=+=+b a b a ②c y b x a ①c y b x a 的解的算法.(可以让学生上台演板)解:第一步:②×a 1 - ①×a 2,得:()12211221c a c a y b a b a -=- ③第二步:解③得 12211221b a b a c a c a y --=; 第三步:将12211221b a b a c a c a y --=代入①,得12212112b a b a c b c b x --=. 也可以只用加减消元法来解决(步骤略).二.概念:在数学中,数学通常是指按照一定的规则解决某一类问题的明确和有限的步骤.现代意义上的“算法”通常是指可以用计算机来解决的某一类问题是程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.说明:1.“算法”没有一个精确化的定义,教科书只对它作了描述性的说明.2. 算法的特点:(1)有序性:算法从初始步骤开始,分为若干明确的步骤,每一步都只能有一个确定的后继步骤,只有执行完前一步才能进入到后一步,并且每一步都要准确无误.(2)明确性:算法中的每一个步骤都是确切的,且能有效的执行且得到确定的结果.(3)有限性: 一个算法的步骤是有限的,它应在有限步操作之后停止,而不能是无限的执行下去.(4)不唯一性:求解某一个问题的算法不一定是唯一的,对于同一个问题可以有不同的算法.(5)问题指向性:算法指向解决一类问题,泛泛谈算法没有意义.三.例题讲评:例1. (1)设计一个算法,判断7是否为质数.(2)设计一个算法,判断35是否为质数.(3)设计一个算法,判断1999是否为质数.(4)设计一个算法,判断整数n(n为任意给定的大于2的整数)是否为质数.分析:(1)质数是只能被1和自身整除的大于1的整数.(2)首先考虑判断一个具体的数是否是质数的方法,以7,35和1999为例.(3)要判断一个大于2的整数n是否为质数,只要根据质数的定义,用比这个整数小的数去除n,如果它只能被1和本身整除,而不能被其它整数整除,则这个数便是质数.解:(1)第一步用2除7,得到余数1,所以2不能整除7第二步用3除7,得到余数1,所以3不能整除7第三步用4除7,得到余数3,所以4不能整除7第四步用5除7,得到余数2,所以5不能整除7第五步用6除7,得到余数1,所以6不能整除7,因此,7是质数.(2)类似的写出判断35是否为质数的算法:第一步用2除35,得到余数1,所以2不能整除7第二步用3除35,得到余数2,所以3不能整除7第三步 用4除35,得到余数3,所以4不能整除7第四步 用5除35,得到余数0,所以5能整除35,因此,35不是质数.(4)第一步 令i=2 .第二步 用i 除n ,得到余数r .第三步 判断“r=0”是否成立.若是则n 不是质数,结束算法;否则将 i 的值增加1,仍用 i 表示.第四步 判断 “i >1998” 是否成立.若是,则n 是质数,结束算法;否则,返回第三步.(4)根据以上分析,对于任意大于2的正整数n ,判断它是否为质数的算法如下:第一步 给出大于2的正整数.第二步 令i=2 .第三步 用i 除n ,得到余数r .第四步 判断“r=0”是否成立.若是则n 不是质数,结束算法;否则将 i 的值增加1,仍用 i 表示.第五步 判断 “i >(n -1)” 是否成立.若是,则n 是质数,结束算法;否则,返回第三步.(设计意图:通过这个例子从特殊到一般的过程,使学生进一步体会到算法概括性,逻辑性有限性,练习把自然语言转化成规范的算法语言)说明:本算法是用自然语言的形式描述的.设计算法一定要做到以下要求:(1)写出的算法必须能解决一类问题,并且能够重复使用.(2)要使算法尽量简单、步骤尽量少.(3)要保证算法正确,且计算机能够执行.例2.用二分法设计一个求方程022=-x 的近似根的算法. 分析:该算法实质是求2的近似值的一个最基本的方法.解:设所求近似根与精确解的差的绝对值不超过0.005,算法:第一步:令()22-=x x f .因为()()02,01><f f ,所以设x 1=1,x 2=2.第二步:令221x x m +=,判断f (m )是否为0.若是,则m 为所求;若否,则继续判断()()m f x f ⋅1大于0还是小于0.第三步:若()()01>⋅m f x f ,则x 1=m ;否则,令x 2=m .第四步:判断005.021<-x x 是否成立?若是,则x 1、x 2之间的任意值均为满足条件的近似根;若否,则返回第二步.说明:按以上步骤,我们将依次得到课本第4页的表1-1和图1.1-1.于是,开区间(1.4140625,1.41796875)中的实数都满足假设条件的原方程是近似根.四.练习:让学生举出一些算法的例子,老师再选出一个简单的具有代表性的例子.如:1.写出解方程0322=--x x 的一个算法.分析:本题是求一元二次方程的解的问题,方法很多,下面分别用配方法、判别式法写出这个问题的两个算法.解:算法1:第一步:移项,得:322=-x x ; ①第二步:①式两边同加1并配方,得:()412=-x ② 第三步:②式两边开方得: x -1=±2 ③第四步:解③得: x =3或x =-1.算法2:第一步:计算方程的判别式并判断其符号: ∆=22+4×3=16>0; 第二步:将a =1,b =-2,c =-3代入求根公式aac b b x 242-±-=.得: x 1=3,x 2=-1. 说明:给出此题的目的是使学生加深对算法概念的理解. (老师辅导学生完成)五.小结:算法的概念及其特点.六.作业: (课本第四页练习)1.任意给定一个正实数,设计一个算法求以这个数为半径的圆的面积.解:算法步骤:第一步:输入任意一个正实数r ;第二步:计算以r 为半径的圆的面积:2r S ⋅=π;第三步:输出圆的面积S.2.任意给定一个大于1的正整数n,设计一个算法求出n的所有因数.解:算法步骤:第一步:依次以2~(n-1)为除数去除n,检查余数是否为0.若是,则是n的因数;若不是,则不是n的因数;第二步:在n的因数中加入1和n;第三步:输出n的所有因数.。
1.1.2 程序框图(第二、三课时)一、教学目标:1、知识与技能:掌握程序框图的概念;会用通用的图形符号表示算法,掌握算法的三个基本逻辑结构;掌握画程序框图的基本规则,能正确画出程序框图。
2、过程与方法:通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程;学会灵活、正确地画程序框图。
3、情感态度与价值观:通过本节的学习,使我们对程序框图有一个基本的了解;掌握算法语言的三种基本逻辑结构,明确程序框图的基本要求;认识到学习程序框图是我们学习计算机的一个基本步骤,也是我们学习计算机语言的必经之路。
二、重点与难点:重点是程序框图的基本概念、基本图形符号和3种基本逻辑结构,难点是能综合运用这些知识正确地画出程序框图。
三、学法与教学用具:1、通过上节学习我们知道,算法就是解决问题的步骤,在我们利用计算机解决问题的时候,首先我们要设计计算机程序,在设计计算机程序时我们首先要画出程序运行的流程图,使整个程序的执行过程直观化,使抽象的问题就得十分清晰和具体。
有了这个流程图,再去设计程序就有了依据,从而就可以把整个程序用机器语言表述出来,因此程序框图是我们设计程序的基本和开端。
2、我们在学习这部分内容时,首先要弄清各种图形符号的意义,明确每个图形符号的使用环境,图形符号间的联结方式。
例如“起止框”只能出现在整个流程图的首尾,它表示程序的开始或结束,其他图形符号也是如此,它们都有各自的使用环境和作用,这是我们在学习这部分知识时必须要注意的一个方面。
另外,在我们描述算法或画程序框图时,必须遵循一定的逻辑结构,事实证明,无论如何复杂的问题,我们在设计它们的算法时,只需用顺序结构、条件结构和循环结构这三种基本逻辑就可以了,因此我们必须掌握并正确地运用这三种基本逻辑结构。
3、教学用具:电脑,计算器,图形计算器四、教学设想:1、创设情境:算法可以用自然语言来描述,但为了使算法的程序或步骤表达得更为直观,我们更经常地用图形方式来表示它。
2021年高中数学《算法与程序框图》教案1 新人教A版必修3一. 教学内容:框图的复习二. 学习目标通过具体实例,进一步认识框图;能绘制简单实际问题的流程图和结构图,体会框图在解决实际问题中的作用;三. 考点分析1、流程图:流程图常常用来表示一个动态过程,通常会有一个“起点”,一个或多个“终点”。
程序框图是流程图的一种。
流程图可以直观、明确地表示动态过程从开始到结束的全部步骤。
它是由图形符号和文字说明构成的图示。
流程图用于描述一个过程性的活动,活动的每一个明确的步骤构成流程图和一个基本单元,基本单元之间用流程线产生联系。
基本单元中的内容要根据需要而确定。
可以在基本单元中具体说明,也可以为基本单元设置若干子单元。
2、绘制流程图的一般过程首先,用自然语言描述流程步骤;其次,分析每一步骤是否可以直接表达,或需要借助于逻辑结构来表达;再次,分析各步骤之间的关系;最后,画出流程图表示整个流程。
3、结构图:表示一个系统中各部分之间的组成结构的框图叫做结构图。
4、绘制结构图步骤:(1)确定组成系统的基本要素,及它们之间的关系。
(2)将系统的主体要素及其之间的关系表示出来。
(3)确定主体要素的下位要素(从属主体的要素)“下位”要素比“上位”要素更为具体,“上位”要素比“下位”要素更为抽象。
(4)逐步细化各层要素,直到将整个系统表示出来为止。
5、结构图与流程图的区别流程图和结构图不同。
流程图是表示一系列活动相互作用、相互制约的顺序的框图。
结构图是表示一个系统中各部分之间的组成结构的框图。
流程图描述动态过程,结构图刻画系统结构。
流程图通常会有一个“起点”,一个或多个“终点”,其基本单元之间由有向线连接;结构图则更多地表现为“树”状结构,其基本要素之间一般为逻辑关系。
【典型例题】例1、画出解关于的不等式,()的流程图。
解:例2、按照下面的流程图操作,将得到怎样的数集?开始写下1加3写下结果你已写下10个数了吗?结束对这个刚写下的数加上一个比前面加过的那个数大2的数NY1+3=4,4+(3+2)=4+5=99+(5+2)=9+7=16,16+(7+2)=16+9=25,25+(9+2)=25+11=36 ,36+(11+2)=36+13=49,49+(13+2)=49+15=64,64+(15+2)=64+17=81,81+(17+2)=81+19=100.这样,可以得到数集{1,4,9,16,25,36,49,64,81,100}.例3、某保险公司业务流程如下:(1)保户投保:填单交费、公司承保、出具保单;(2)保户提赔:公司勘查;同意,则赔偿,不同意,则拒赔.试画出该公司业务流程图.解:例4、根据如图所示的程序框图写出所打印数列的前5项,并建立数列的递推公式,这个数列是等差数列吗?解:设打印出来的数列的项依次记为则于是可得递推公式2,3,111≥∈+==-nNnaaann且.因为,所以这个数列是等差数列.例5、某地行政服务中心办公分布结构如下.(1)服务中心管理委员会全面管理该中心工作,下设办公室、综合业务处、督察投诉中心,这三部门在一楼,其余局、委办理窗口分布在其他楼层;(2)二楼:公安局、民政局、财政局;(3)三楼:工商局、地税局、国税局、技监局、交通局;(4)四楼:城建局、人防办、计生办、规划局;(5)五楼:其余部门办理窗口.试绘制该中心结构图.解:【模拟试题】一、选择题(本大题共6小题,每小题5分,共30分)1. 下列流程图的基本符号中,表示判断的是()2. 下列的流程图示中表示选择结构的是()3. 下列对程序框图的描述,正确的是()A. 只有一个起点,一个终点B. 只有一个起点,一个或多个终点C. 多个起点,一个或多个终点D. 多个起点,只有一个终点4、下图是《集合》的知识结构图,如果要加入“子集”,则应该放在()A. “集合的概念”的下位B. “集合的表示”的下位C. “基本关系”的下位D. “基本运算”的下位5. 下面的程序框图的作用是按大小顺序输出两数,则括号处的处理可以是()输入A、B A<B?(________)输出A、B 结束开始YNA. A←B:B←AB. T←B:B←A :A←TC. T←B:A←T :B←AD. A←B:T←A :B←T6. 某成品的组装工序图如右,箭头上的数字表示组装过程中所需要的时间(小时),不同车间可同时工作,同一车间不能同时做两种或两种以上的工作,则组装该产品所需要的最短时间是()A. 11小时B. 13小时C. 15小时D. 17小时二、填空题(本题共4小题,每小题5分,共20分)7、一般来说,一个复杂的流程图都可以分解成_________、_________、__________三种结构;8、一般地,对于树状结构图,下位比上位________,上位比下位___________;9、读下面的流程图,若输入的值为-5时,输出的结果是__________.输入A A<0?A←A+2 A←2×A 输出A 结束开始YN 10、如图是数学中的一算法流程图:则其表示的数学算式为___________________________________.三、解答题(本大题共4题,共50分)11、试画出一个判断函数f(x)单调性的流程图。
必修三算法与程序框图(优秀教案!)
算法与程序框图
教学目标:明确算法的含义,熟悉算法的三种基本结构。
教学重点:算法的基本知识与算法对应的程序框图的设计.
教学难点:与算法对应的程序框图的设计及算法程序的编写.
教学过程:
1.算法的定义:广义的算法是指完成某项工作的方法和步骤,现代意义的算法是指可以用计算机来解决的某一类问题的程序和步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.
2.流程图的概念:流程图是用一些规定的图形、指向线及简单的文字说明来表示算法几程序结构的一种图形程序.它直观、清晰,便于检查和修改.其中,图框表示各种操作的类型,图框中的文字和符号表示操作的内容,带箭头的流程线(指向线)表示操作的先后次序.
构成流程图的图形符号及其作用
3.规范流程图的表示:
①使用标准的框图符号;
②框图一般按从上到下、从左到右的方向画,流程线要规范;
③除判断框外,大多数框图符号只有一个进入点和一个退出点.
④在图形符号内描述的语言要非常简练、清楚.
4、算法的三种基本逻辑结构:
课本中例题的讲解得出三种基本逻辑结构:顺序结构、条件结构、循环结构
(1)顺序结构:顺序结构描述的是是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的。
例1:已知一个三角形的三边分别为2、3、4,利用海伦公式设计一个算法,求出它的面积,并画出算法的程序框图。
算法分析:这是一个简单的问题,只需先算出p的值,再将它代入公式,最后输出结果,只用顺序结构就能够表达出算法。
解:程序框图:
点评:顺序结构是由若干个依次执行的步骤组成的,是任何一个算法都离不开的基本结构。
(2)条件结构:根据条件选择执行不同指令的控制结构。
例2:任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在,画出这个算法的程序框图。
算法分析:判断分别以这3个数为三边边长的三角形是否存在,只需要验收这3个数当中任意两个数的和是否大于第3个数,这就需要用到条件结构。
程序框图:
(3)循环结构:在一些算法中,经常会出现从某处开始,按照一定条件,反复执行某一处理步骤的情况,这就是循环结构,反复执行的处理步骤为循环体,显然,循环结构中一定包含条件结构。
循环结构分为两类:
(1)一类是当型循环结构,如图(1)所示,它的功能是当给定的条件P1成立时,执行A框,A框执行完毕后,再判断条件P1是否成立,如果仍然成立,再执行A框,如此反复执行A框,直到某一次条件P1不成立为止,此时不再执行A框,从b离开循环结构。
(2)另一类是直到型循环结构,如图(2所示,它的功能是先执行,然后判断给定的条件P2是否成立,如果P2仍然不成立,则继续执行A框,直到某一次给定的条件P2成立为
b b
当型循环结构直到型循环结构
两种循环结构有什么差别?
当型:先判断后执行
先判断指定的条件是否为真,若条件为真,执行循环条件,条件为假时退出循环。
直到型;先执行后判断
先执行循环体,然后再检查条件是否成立,如果不成立就重复执行循环体,直到条件成立退出循环。
注意:
1.对于算法的理解不能仅局限于解决数学问题的方法,解决任何问题的方法和步骤都应该是算法.算法具有概括性、抽象性、正确性等特点,要通过具体问题的过程和步骤的分析去体会算法的思想,了解算法的含义.
2.在学习程序框图时要掌握各程序框的作用,准确应用三种基本逻辑结构,即顺序结构、条件分支结构、循环结构来画程序框图,准确表达算法.画程序框图是用基本语句来编程的前提.
例3:设计一个计算1+2+…+100的值的算法,并画出程序框图。
算法分析:只需要一个累加变量和一个计数变量,将累加变量的初始值为0,计数变量的值可以从1到100。
解:程序框图:
课堂练习:
1:输入矩形的边长求它的面积,画出程序框图。
2:求x的绝对值,画出程序框图。
3:画出求21+22+23+ (2100)
的值的程序框图。
课后练习:
1.下列关于算法的描述正确的是( )
A .算法与求解一个问题的方法相同
B .算法只能解决一个问题,不能重复使用
C .算法过程要一步一步执行
D .有的算法执行完以后,可能没有结果 2.计算下列各式中的S 值,能设计算法求解的是( )
①S =1+2+3+…+100;②S =1+2+3+…+100+…;③S =1+2+3+…+n (n ≥1,n ∈N)
A .①②
B .①③
C .②③
D .①②③ 3.下列关于算法的说法正确的是( ) A .一个算法的步骤是可逆的 B .描述算法可以有不同的方式
C .算法可以看成按照要求设计好的有限的确切的计算序列并且这样的步骤能解决当前问题
D .算法只能用一种方式显示
4.下列各式中T 的值不能用算法求解的是( ) A .T =12
+22
+32
+42
+…+100
2
B .T =12+13+14+15+…+150
C .T =1+2+3+4+5+…
D .T =1-2+3-4+5-6+…+99-100
5.下列四种叙述能称为算法的是( )
A .在家里一般是妈妈做饭
B .做米饭需要刷锅、淘米、添水、加热这些步
骤
C .在野外做饭叫野炊
D .做饭必须要有米
6.关于一元二次方程x 2
-5x +6=0的求根问题,下列说法正确的是( ) A .只能设计一种算法 B .可以设计两种算法
C .不能设计算法
D .不能根据解题过程设计算法
7.对于解方程x 2
-2x -3=0的下列步骤:
①设f (x )=x 2
-2x -3
②计算方程的判别式Δ=22
+4×3=16>0 ③作f (x )的图象
④将a =1,b =-2,c =-3代入求根公式
x =
-b ±Δ
2a
,得x 1=3,x 2=-1. 其中可作为解方程的算法的有效步骤为( ) A .①② B .②③ C .②④ D .③④ 8.解决某个问题的算法如下: 第一步,给定一个实数n (n ≥2).
第二步,判断n 是否是2,若n =2,则n 满足条件;若n >2,则执行第三步. 第三步,依次从2到n -1检验能不能整除n ,若都不能整除n ,则n 满足条件. 则满足上述条件的实数n 是( ) A .质数 B .奇数
C.偶数 D.约数
9.如下图所示的程序框图,其功能是( )
A.输入a,b的值,按从小到大的顺序输出它们的值
B.输入a,b的值,按从大到小的顺序输出它们的值
C.求a,b的最大值
D.求a,b的最小值
10.给出如图的程序框图,那么输出的S等于( )
A.2450 B.2550 C.5050 D.4900
第9题图第10题图
11.已知数字序列:2,5,7,8,15,32,18,12,52,8.写出从该序列中搜索18的一个算法.
第一步,输入实数a.
第二步,________.
第三步,输出a=18.
12.求1×3×5×7×9×11的值的一个算法是:
第一步:求1×3得到结果3.
第二步:将第一步所得结果3乘5,得到结果15.
第三步:________________________________________________________________.
第四步:再将105乘9得到945.
第五步:再将945×11,得到10395,即为最后结果.
11.输入3个实数按从大到小的次序排序。
12.给出50个数,1,2,4,7,11,…,其规律是:第1个数是1,第2个数比第1个数大1,第3个数比第2个数大2,第4个数比第3个数大3,…,以此类推. 要求计算这50个数的和. 将上面给出的程序框图补充完整.
(1)_____________________
(2)_____________________
(第12题图)。