您好,欢迎访问三七文档
当前位置:首页 > 中学教育 > 初中教育 > 高中算法知识点及例题总结
【知识内容结构】【重点知识梳理与注意事项】『算法与程序框图』◆算法算法可以理解为由基本运算及规定的运算顺序所构成的完整的解题步骤,或者看成按照要求设计好的有限的明确的计算序列,并且这样的步骤或序列能够解决一类问题。描述算法可以有不同的方式。可以用自然语言和数学语言加以叙述,也可以借助形式语言(算法语言)给出精确的说明,也可以用框图直观地显示算法的全貌。◆程序框图◇概念:通常用一些通用图形符号构成一张图来表示算法,这种图称作程序框图(简称框图)。◇常用图形符号:注意:i)起、止框是任何流程不可少的;ii)输入和输出可用在算法中任何需要输入、输出的位置;iii)算法中间要处理数据或计算,可分别写在不同的处理框内;iv)当算法要求对两个不同的结果进行判断时,判断条件要写在判断框内;割圆术v)如果一个框图需要分开来画,要在断开处画上连接点,并标出连接的号码。◇画程序框图的规则:(1)使用标准的框图的符号;(2)框图一般按从上到下、从左到右的方向画;(3)除判断框外,其他框图符号只有一个进入点和一个退出点,判断框是具有超过一个退出点的唯一符号;(4)一种判断框是二择一形式的判断,有且仅有两个可能结果;另一种是多分支判断,可能有几种不同的结果;(5)在图形符号内描述的语言要非常简练清楚。◆算法的三种基本逻辑结构◇顺序结构:描述的是最简单的算法结构,语句与语句之间,框与框之间按从上到下的顺序进行。例:◇条件分支结构:是依据指定条件选择执行不同指令的控制结构。例:◇循环结构:根据指定条件决定是否重复执行一条或多条指令的控制结构。例:『基本算法语句』◆赋值、输入和输出语句◇赋值语句:用来表明赋给某一个变量一个具体的确定的语句叫做赋值语句。一般格式:变量名=表达式。注意:赋值号左边只能是变量名字,而不是表达式;赋值号左右不能对换;不能利用赋值语句进行代数式的演算;赋值号与数学中的等号意义不同。◇输入语句一般格式:a=input(“a=”)◇输出语句一般格式:print(%io(2),x)◆条件语句:处理条件分支逻辑结构的算法语句。一般格式:if表达式语句序列1;else语句序列2;end◆循环语句:处理算法中的循环结构。一般格式:(1)for循环变量=初值:步长:终值循环体;end(2)while表达式循环体;end『中国古代数学中的算法案例』◆更相减损之术(求两个正整数最大公约数的算法)例如,求16,12的最大公约数,则(16,12)→(4,12)→(4,8)→(4,4),4为16,12的最大公约数。程序:a=input(“pleasegivethefirstnumber”);b=input(“pleasegivethesecondnumber”);whileabifaba=a-b;elseb=b-a;endendprint(%io(2),a,b);◆割圆术(求π的不足近似值)程序(面积法):n=6;x=1;s=6*sqrt(3)/4;fori=1:5h=sqrt(1-(x/2)^2);s=s+n*x*(1-h)/2;n=2*n;x=srt((x/2)^2+(1-h)^2);endprint(%io(2),n,s);◆秦九韶算法例题:【全章课程实录】第一次课:知识:学习某一问题的一般思路是定义→表达(结构)→实现(语言)→应用引入了算法的概念(即定义),应注意“有限的、确切的、解决一类问题”这三个关键词。例题:解二元一次方程组的算法;鸡兔同笼两种解法的算法。第二次课:知识:引入如何在算法中体现循环,开始设计程序框图。例题:鸡兔同笼第三种解法的算法;计算b=ax的程序框图。第三次课:知识:通过一道例题实现程序框图中的循环结构。例题:鸡兔同笼第一种方法、第三种方法的程序框图。第四次课:知识:引入基本算法语句的知识,赋值、输入、输出的程序语句。引入条件语句。例题:求任意两数乘法的程序。解一元二次方程的程序(先设计程序框图,在写程序);书P12/B/4的程序。第五次课:知识:引入循环语句,介绍了for、while语句的区别。for在知道终值的情况下较适用,while则不需要知道确切的终值。注意:设计程序是应先想好每循环一次干什么,再考虑别的。例题:在解一元二次方程的程序(上一次课设计的)加入循环结构。书P26/A/5的程序框图。第六次课:知识:进入程序的较综合题目的讲解。例题:有6个学生,每个学生都选相同的4门课。输入每人每门课的成绩,计算每人总成绩、平均成绩并输出。计算每门课6人的平均成绩。(画出程序框图)第七次课:知识:中国古代算法案例,割圆术、秦九韶算法。例题:用周长计算π的不足近似值;用实例演算秦九韶算法。第八次课:知识:开始学习第二章统计。通过学习章前序言明确统计的概念(书P48),讲了随机抽样中的简单随机抽样(抽签法、随机数表法)、系统抽样和分层抽样。例题:从50名同学中选10名同学参加活动;从500同学中选10名同学参加活动;从500名同学中(400男、100女)选10名同学参加活动。三种情况分别应选什么抽样方法?第九次课:知识:。。考试。==。第二节课还是用上次课的例题,再次明确了三种抽样方法的特点、异同。例题:(同第八次课)【经典例题】(1)鸡兔同笼问题的框图,择取其中的方法三、方法一的框图。原因:不仅是典型例题,而且自己做的时候还错了,没有循环起来。原因:典型例题,且自己做的时候只考虑了确定数值后的方法,没有普遍性。(2)求一元二次方程的解的程序框图原因:注意分类讨论,这道题是在“条件分支结构”的基础上加上“循环结构”,因而比较有代表性。体现了如何加入循环结构的过程。(下图黑笔部分)(3)割圆术(计算π的不足近似值)原因:这道题是用的“计算周长”的方法,与书上“计算面积”的方法不同。(4)秦九韶算法原因:很有成就感地这道题是自己写的……亲身体验了一把如何减少乘法、加法的步骤。当n=6时,只用算6次乘法、6次加法。比书上那个……总结出来的公式好看多了。╮(╯▽╰)╭(5)一道挺综合的题……泽出框图部分(出自小测06)原因:有一定综合性,老师课上带着一步步分析很容易就能想出来……但是自己做就想不到。【典型错题】(1)用二分法求方程的近似根(练习册P2)原因:做它的时候我忘了“二分法”这个东西……它帮助我回忆了二分法。(2)原题是:按下面框图运行程序后,输出结果是?(练习册P7)原因:用到了数列的知识……这也是我忘的差不多的内容。且给解这类程序框图提供了一种方法——用通项公式。(3)(练习册P8)原因:同一道题,两个判断框的“是”和“否”交换位置,导致判断框内的条件发生改变,且每循环一次的内容发生改变。应注意判断框内的判断条件是否带“等号”。(4)……我想说的是第8题。(练习册P12)原因:涉及到复合函数,写出了如何用程序编写复合函数。(5)……第1题是重点(练习册P17)原因:关于数循环次数的问题。。很容易错啊……(至少我是这样的)稍微总结一下经验:循环次数=终值÷步长+1。……。应该很实用。(6)用while语句的注意事项(练习册P19)原因:与for语句不同,while语句不能体现出循环的初值,因此一定要在循环前加上初值~~。(7)关于程序用语“floor”。。(小测04)原因:(大大的一张图。。==。)“floor”意为“向下取整”。格式:floor()。括号里为需要取整的数。另外,注意图中“floor(T)==T”中的“==”。在程序中,“==”才表示“等号”。【复习方法、效率】复习时可以按照“定义→表达(结构)→实现(语言)→应用”这样的思路进行复习。算法这一章虽然没有什么过于纠结的难点,但是有很多细节需要注意。比如在判断框外,一定要看清“是”、“否”的位置;设计程序时注意加“;”;for语句和while语句在用法上的区别——for一般用语清楚终值的情况,而while语句只需要一个范围即可,且while语句需要在循环前加上初值。学过这一章之后,除了各种框图、程序的设计,我还学会了大致以一种较普遍的方法来解决一类问题。因此,算法这章不仅是教给我们算法,更重要的是让我们学会以一种方法来“解决一类问题”。【下阶段注意事项】1.笔记啊笔记……笔记要标上日期。。这次惨了,每次笔记都是接着上次的直接记,于是写“课程实录”的时候就悲剧了。。==。2.还是笔记……得记得每次课把知识要点记上,不能只记例题。3.注意总结某些特点明确的题的“解决一类题的方法”……以备考试用~~。4.做完题后应注意总结,不能做完就完事儿了。比如练习册上的某题把“是”、“否”换了位置,像这种题做完后可以考虑一下它为什么这么做。
本文标题:高中算法知识点及例题总结
链接地址:https://www.777doc.com/doc-6339469 .html