算法初步复习总结共26页
- 格式:ppt
- 大小:2.86 MB
- 文档页数:26
算法初步知识点总结算法是计算机科学的一个重要领域,在计算机编程和数据处理中起着至关重要的作用。
算法是一种明确定义计算过程,通过这种计算过程,可以解决问题并产生所需的结果。
本文将回顾一些算法的初步知识点,包括基本概念、常见算法和一些实际应用。
一、基本概念1.1 算法的定义算法是一种有限而明确的问题解决方案的序列,其中每个步骤都是确定的、执行的和可计算的。
算法可以解决各种问题,如排序、搜索、最短路径等。
1.2 算法的特性算法有以下特性:输入、输出、确定性、有限性和有效性。
输入是指算法接受什么样的输入数据;输出是指算法产生什么样的输出数据;确定性是指算法的每个步骤都是确定的,如果输入相同,则输出也相同;有限性是指算法必须在有限时间内执行完成;有效性是指算法的每个步骤都是可计算的,可以通过计算机实现。
1.3 算法的复杂度算法的复杂度是指算法在解决问题时所需的资源,包括时间复杂度和空间复杂度。
时间复杂度是指算法在解决问题时所需的时间,通常用大O符号表示;空间复杂度是指算法在解决问题时所需的空间,通常也用大O符号表示。
1.4 算法的设计方法算法的设计方法包括暴力搜索、贪心算法、动态规划、分治法和回溯法等。
不同的问题需要采用不同的设计方法来解决,这些设计方法都可以帮助程序员更好地解决问题。
二、常见算法2.1 排序算法排序算法是指将一组数据按照一定的顺序重新排列的算法,常见的排序算法包括冒泡排序、选择排序、插入排序、快速排序、归并排序等。
其中,冒泡排序和快速排序属于比较排序算法,而计数排序和桶排序则属于非比较排序算法。
2.2 搜索算法搜索算法是指在一组数据中寻找特定的数据的算法,常见的搜索算法包括线性搜索、二分搜索、深度优先搜索和广度优先搜索等。
这些搜索算法可以帮助程序员在数据集中快速找到所需的数据。
2.3 图算法图算法是指解决图相关问题的算法,常见的图算法包括最短路径算法(如Dijkstra算法和Floyd算法)、最小生成树算法(如Prim算法和Kruskal算法)、和拓扑排序等。
算法初步知识点高中数学必修3知识点总结第一章算法初步1.1.1算法的概念1、算法概念:在数学上,现代意义上的“算法”通常是指可以用计算机来解决的某一类问题是程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.2. 算法的特点:(1)有限性:一个算法的步骤序列是有限的,必须在有限操作之后停止,不能是无限的.(2)确定性:算法中的每一步应该是确定的并且能有效地执行且得到确定的结果,而不应当是模棱两可.(3)顺序性与正确性:算法从初始步骤开始,分为若干明确的步骤,每一个步骤只能有一个确定的后继步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都准确无误,才能完成问题.(4)不唯一性:求解某一个问题的解法不一定是唯一的,对于一个问题可以有不同的算法.(5)普遍性:很多具体的问题,都可以设计合理的算法去解决,如心算、计算器计算都要经过有限、事先设计好的步骤加以解决.1.1.2程序框图1、程序框图基本概念:(一)程序构图的概念:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形。
一个程序框图包括以下几部分:表示相应操作的程序框;带箭头的流程线;程序框外必要文字说明。
(二)构成程序框的图形符号及其作用学习这部分知识的时候,要掌握各个图形的形状、作用及使用规则,画程序框图的规则如下:1、使用标准的图形符号。
2、框图一般按从上到下、从左到右的方向画。
3、除判断框外,大多数流程图符号只有一个进入点和一个退出点。
判断框具有超过一个退出点的唯一符号。
4、判断框分两大类,一类判断框“是”与“否”两分支的判断,而且有且仅有两个结果;另一类是多分支判断,有几种不同的结果。
5、在图形符号内描述的语言要非常简练清楚。
(三)、算法的三种基本逻辑结构:顺序结构、条件结构、循环结构。
1、顺序结构:顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行顺序结构在程序框图中的体现就是用流程线将程序框自上而 下地连接起来,按顺序执行算法步骤。
第一章算法初步全章小结1、算法概念:在数学上,算法通常是指可以解决的一类问题是程序或步骤,这些程序或步骤必须是,而且能够在。
.2、程序框图基本概念:(1)程序构图的概念:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形。
(2)构成程序框的图形符号及其作用(3)、算法的三种基本逻辑结构◇:描述的是最简单的算法结构,语句与语句之间,框与框之间按从上到下的顺序进行。
例:◇:是依据指定条件选择执行不同指令的控制结构。
例:◇:根据指定条件决定是否重复执行一条或多条指令的控制结构。
例:3、基本算法语句◇:用来表明赋给某一个变量一个具体的确定的语句叫做赋值语句。
一般格式:变量名=表达式。
注意:赋值号左边只能是变量名字,而不是表达式;如:2=X是错误的。
赋值号左右不能对换;如“A=B”“B=A”的含义运行结果是不同。
不能利用赋值语句进行代数式的演算;(如化简、因式分解、解方程等)赋值号与数学中的等号意义不同。
◇:一般格式:input“提示内容”;变量◇:一般格式:print“提示内容”;表达式◆ :处理条件分支逻辑结构的算法语句。
◆:处理算法中的循环结构。
(1)WHILE 语句的一般格式是(2)UNTIL语句的一般格式是4、算法案例(1)辗转相除法,更相减损之术(求两个正整数最大公约数的算法) 例题1:用两种方法求161与253的最大公约数. 【解析】方法一:辗转相除法253=161×1+92, 161=92×1+69, 92=69×1+23, 69=23×3+0.∴161与253的最大公约数为23.方法二:更相减损术253-161=92, 161-92=69, 92-69=23, 69-23=46, 46-23=23.∴161与253的最大公约数为23.(2)秦九韶算法:求多项式的值时,首先计算最内层括号内依次多项式的值,然后由内向外逐层计算一次多项式的值例题2:已知一个5次多项式为14325)(2345-+-++=x x x x x x f ,用秦九韶算法求这个多项式当x=2时的值.5:进位制例题3:把二进制数234(2),转化为五进制数(先转化为十进制数)。
算法初步主要知识点总结一、算法的基本概念1. 什么是算法算法是解决问题的一系列有序的步骤。
它是一种解题方法,目的是找到一个问题的解决方案。
在计算机科学中,算法是对问题的描述和解决方法的精确定义。
2. 算法的特点(1)有穷性:算法必须在有限的步骤内结束。
(2)确定性:算法的每一步必须有确定的含义。
(3)可行性:算法的每一步都必须是可以实现的。
(4)输入:算法具有零个或多个输入。
这些输入以约定的顺序列在参数列表中。
(5)输出:算法至少具有一个输出。
这些输出以约定的顺序列在参数列表中。
3. 算法的评价标准算法的好坏可以通过以下标准来评价:(1)正确性:算法能够得到正确的输出。
(2)效率:算法执行所需要的时间和空间。
(3)可读性:算法的代码结构明了,易于理解。
二、算法的设计方法1. 穷举法穷举法也叫暴力搜索法,是一种简单粗暴的思想,它通过穷尽所有可能的情况,找到问题的解。
穷举法的效率通常不高,但是在某些情况下,却是最直接的解决方法。
2. 分而治之分而治之是一种将问题分成若干个子问题,分别解决的方法。
通过将原问题分解成一些规模较小的子问题,再将子问题的解合并起来,就能得到原问题的解。
分而治之的典型应用是归并排序和快速排序。
3. 贪心算法贪心算法是一种采用每一步的最优选择来解决问题的方法。
它通常用于求解最优化问题,但是不一定能够得到最优解。
贪心算法思想简单,实现容易,但是需要注意选择最优策略时的约束条件。
4. 动态规划动态规划是一种通过将原问题分解成若干个子问题,并记忆子问题的解,最终得到原问题的解的方法。
它通常用于解决最优化问题。
动态规划需要一个递推公式来描述问题的结构,并用一个表格或者数组来存储中间状态。
典型的动态规划问题有背包问题和最长公共子序列问题。
5. 回溯法回溯法是一种通过尝试所有可能的情况来解决问题的方法。
在解决问题时,回溯法会不断尝试所有可能的解,然后通过一些条件来剪枝,直到得到问题的解。
回溯法通常用于解决排列组合问题、图搜索问题等。
《算法初步》知识点总结1、在数学中,算法通常就是指按照一定规则解决某一类问题得明确与有限得步骤、现在,算法通常可以编成计算机程序,让计算机执行并解决问题、算法得特征:①确定性②逻辑性③有穷性2、程序框图图形符号名称功能终端框(起止框)表示一个算法得起始与结束输入、输出框表示一个算法输入与输出得信息处理框(执行框)赋值、计算判断某一条件就是否成立,成立时在出口处标判断框明“就是”或“Y”;不成立时标明“否”或“N”流程线连接程序框连接点连接程序框图得两部分3、输入、输出与赋值语句(1)输入语句输入语句得格式:INPUT“提示内容”;变量例如:INPUT “x=”;x功能:实现算法得输入变量信息(数值或字符)得功能、要求:1°输入语句要求输入得值就是具体得常量、2°提示内容提示用户输入得就是什么信息,必须加双引号,提示内容“原原本本”得在计算机屏幕上显示,提示内容与变量之间要用分号隔开、3°一个输入语句可以给多个变量赋值,中间用“,”分隔、形式如:INPUT“a=,b=,c=,”;a,b,c(2)输出语句输出语句得一般格式:PRINT“提示内容”;表达式例如:PRINT“S=”;S功能:实现算法输出信息(表达式)得功能、要求:1°表达式就是指算法与程序要求输出得信息、2°提示内容提示用户要输出得就是什么信息,提示内容必须加双引号,提示内容要用分号与表达式分开、3°如同输入语句一样,输出语句可以一次完成输出多个表达式得功能,不同得表达式之间可用“,”分隔、形式如:PRINT “a,b,c:”;a,b,c(3)赋值语句赋值语句得一般格式:变量=表达式、赋值语句中得“=”称作赋值号、功能:将表达式所代表得值赋给变量、要求:1°赋值语句左边只能就是变量名字,而不就是表达式,右边表达式可以就是一个常量、变量或含变量得运算式、如:2=x就是错误得、2°赋值号得左右两边不能对换、赋值语句就是将赋值号右边得表达式得值赋给赋值号左边得变量、如“A=B”“B=A”得含义运行结果就是不同得,如x=5就是对得,5=x就是错得,A+B=C 就是错得,C=A+B就是对得、3°不能利用赋值语句进行代数式得演算(如化简、因式分解、解方程等),如y=x2-1=(x-1)(x+1),这就是实现不了得、在赋值号右边表达式中每一个变量得值必须事先赋给确定得值、在一个赋值语句中只能给一个变量赋值,不能出现两个或以上得“=”、但对于同一个变量可以多次赋值、4、条件结构与条件语句(1)一个算法中,经常会遇到一些条件得判断,算法得流程根据条件就是否成立有不同得流向,条件结构就就是处理这种过程得结构、用程序框图表示条件结构如下图:(2)条件语句1°“IF—THEN—ELSE”语句格式:IF 条件THEN语句体1ELSE语句体2END IF功能:在“IF—THEN—ELSE”语句中,“条件”表示判断得条件,“语句体1”表示满足条件时执行得操作内容;“语句体2”表示不满足条件时执行得操作内容;END IF表示条件语句得结束、计算机在执行“IF—THEN—ELSE”语句时,首先对IF后得条件进行判断,如果符合条件,则执行THEN后面得“语句1”;若不符合条件,则执行ELSE后面得“语句2”、2°“IF—THEN”语句格式:IF 条件THEN语句体END IF功能:“条件”表示判断得条件;“语句”表示满足条件时执行得操作内容,条件不满足时,直接结束判断过程;END IF表示条件语句得结束、计算机在执行“IF—THEN”语句时,首先对IF后得条件进行判断,如果符合条件就执行THEN后边得语句,若不符合条件则直接结束该条件语句,转而执行其她后面得语句、(3)相同点:首先对IF后得条件进行判断,如果符合条件就执行THEN后边得语句、不同点:对于“IF—THEN—ELSE”语句,若不符合条件,则执行ELSE后面得“语句体2”、对于“IF—THEN”语句,若不符合条件则直接结束该条件语句,转而执行其她后面得语句、(4)程序中得条件语句与程序框图中得条件结构存在一一对应关系如下图:5、循环结构与循环语句(1)循环结构循环结构有两种形式:当型循环结构与直到型循环结构、1°当型循环结构,如图(1)所示2°直到型循环结构,如图(2)所示,(1)当型循环结构(2)直到型循环结构(2)循环语句1°当型循环语句当型(WHILE型)语句得一般格式为:WHILE 条件循环体WEND功能:计算机执行此程序时,遇到WHILE语句,先判断条件就是否成立,如果成立,则执行WHILE与WEND之间得循环体;然后返回到WHILE语句再判断上述条件就是否成立,如果成立,再执行循环体,这个过程反复执行,直到一次返回到WHILE语句判断上述条件不成立为止,这时不再执行循环体,而就是跳到WEND语句后,执行WEND后面得语句、因此当型循环又称“前测试型”循环,也就就是我们经常讲得“先测试后执行”“先判断后循环”、2°直到型循环语句直到型(UNTIL型)语句得一般格式为:DO循环体LOOP UNTIL 条件功能:计算机执行UNTIL语句时,先执行DO与LOOP UNTIL之间得循环体,然后判断“LOOP UNTIL”后面得条件就是否成立,如果条件不成立,返回DO语句处重新执行循环体、这个过程反复执行,直到一次判断“LOOP UNTIL”后面得条件成立为止,这时不再返回执行循环体,而就是跳出循环体执行“LOOP UNTIL条件”下面得语句、因此直到型循环又称“后测试型”循环,也就就是我们经常讲得“先执行后测试”“先循环后判断”、(3)相同点:都就是反复执行循环体语句、不同点:当型循环语句就是先判断后循环,直到型循环语句就是先循环后判断、(4)下面为循环语句与程序框图中得条件结构得一一对应关系、1°直到型循环结构:2°当型循环结构:例1 编写程序,使任意输入得3个整数按从大到小得顺序输出、算法步骤如下:第一步,输入3个整数a,b,c、第二步,将a与b比较,并把小者赋给b,大者赋给a、第三步,将a与c比较,并把小者赋给c,大者赋给a(此时a已就是三者中最大得)、第四步,将b与c比较,并把小者赋给c,大者赋给b(此时a,b,c已按从大到小得顺序排列好)、第五步,按顺序输出a,b,c、如下图所示,上述操作步骤可以用程序框图更直观地表达出来、例2 编写程序,输出两个不相等得实数a、b得最大值、解:算法一:第一步,输入a,b得数值、第二步,判断a,b得大小关系,若a>b,则输出a得值,否则,输出b得值、算法二:第一步,输入a,b得数值、第二步,判断a,b得大小关系,若b>a,则将b得值赋予a;否则,直接执行第三步、第三步,输出a得值,结束、(程序框图如下图)。
算法初步小结复习应城二中夏丽整体设计教学分析算法是高中数学新增知识之一,是数学及其应用的重要组成部分,是计算科学的重要基础。
算法思想也正成为现代人应具备的一种基本数学素养。
前面学习了算法与程序框图、基本算法语句、算法案例,本节课作为本章的小结,旨在和学生一起,站在全章的高度,以算法思想为灵魂,以问题的解决为主线,以典型的例题为操作平台,以巩固知识、发展能力、提高素养为目的对全章作全面的复习总结,帮助学生进一步提高对算法的理解和认识,优化知识结构。
教学目标1.复习算法的基础知识,理清知识网络,掌握算法的方法,体会算法的思想2.熟练应用算法与程序框图、基本算法语句、算法案例等方法解决问题3.通过本章的学习逐步提高学生的逻辑思维能力,学会用数学方法认识世界、改变世界教学重难点重点:算法的知识与对应程序框图的设计难点:程序框图的设计与编写课时安排1课时教学过程复习旧知1.请同学们完成本章知识框架(1) 回顾算法的定义及特征(2) 指出程序中的输入语句、输出语句、赋值语句及对应的程序框图(3)指出程序中的顺序结构、条件结构、循环结构(4)回顾学过的算法案例讨论结果(1)算法的定义:在数学中,算法通常是指按照一定规则解决某一类问题的明确有限的步骤。
算法的特征:确定性、逻辑性、有穷性(2)输入、赋值、输出语句与对应的程序框图的对应关系如下图INPUT m,n m=nPRINT m(3)顺序结构、条件结构、循环结构分别可以用程序框图表示为如下图:顺序结构条件结构2.分析辗转相除法的程序框图,回顾本章基础知识循环结构循环结构与相应的语句的一一对应关系直到型循环语句与直到型循环结构:当型循环语句与当型循环结构:典例剖析例1:中国网通规定:拨打市内电话时,如果不超过3分钟,则收取话费0.3元;如果通话时间超过3分钟,则超出部分按每分钟0.1元收取话费,不足一分钟按一分钟计算,如何设计一个程序,计算通话费用 t例2设计一个程序,将 化为十进制数变式训练1.下列程序执行后输出的结果是 i=11s=1WHILE i >9s=s*i i=i-1WEND PRINT s END2.下面为一个求20个数的平均数的程序,在横线上应填充的语句为S=0 i=1 DOINPUT x s=s+x i=i+1()2111111LOOP UNTILa=s/20PRINT aEND归纳小结1.掌握条件结构和循环结构的逻辑2.循环条件表示算法的关键是:(1)确定循环变量和初始值(2)确定循环体(3)设置循环终止条件课后练习必做题:课本第50页A组1、4题选做题:课本第51页B组第1题。
《算法初步》知识点总结1、在数学中,算法通常是指按照一定规则解决某一类问题的明确和有限的步骤.现在,算法通常可以编成计算机程序,让计算机执行并解决问题.算法的特征:①确定性②逻辑性③有穷性2、程序框图图形符号名称功能终端框(起止框)表示一个算法的起始和结束输入、输出框表示一个算法输入和输出的信息处理框(执行框)赋值、计算判断某一条件是否成立,成立时在出口处标明判断框“是”或“Y”;不成立时标明“否”或“N”流程线连接程序框连接点连接程序框图的两部分3、输入、输出和赋值语句(1)输入语句输入语句的格式:INPUT“提示内容”;变量例如:INPUT “x=”;x功能:实现算法的输入变量信息(数值或字符)的功能.要求:1°输入语句要求输入的值是具体的常量.2°提示内容提示用户输入的是什么信息,必须加双引号,提示内容“原原本本”的在计算机屏幕上显示,提示内容与变量之间要用分号隔开.3°一个输入语句可以给多个变量赋值,中间用“,”分隔.形式如:INPUT“a=,b=,c=,”;a,b,c(2)输出语句输出语句的一般格式:PRINT“提示内容”;表达式例如:PRINT“S=”;S功能:实现算法输出信息(表达式)的功能.要求:1°表达式是指算法和程序要求输出的信息.2°提示内容提示用户要输出的是什么信息,提示内容必须加双引号,提示内容要用分号和表达式分开.3°如同输入语句一样,输出语句可以一次完成输出多个表达式的功能,不同的表达式之间可用“,”分隔.形式如:PRINT “a,b,c:”;a,b,c(3)赋值语句赋值语句的一般格式:变量=表达式.赋值语句中的“=”称作赋值号.功能:将表达式所代表的值赋给变量.要求:1°赋值语句左边只能是变量名字,而不是表达式,右边表达式可以是一个常量、变量或含变量的运算式.如:2=x是错误的.2°赋值号的左右两边不能对换.赋值语句是将赋值号右边的表达式的值赋给赋值号左边的变量.如“A=B”“B=A”的含义运行结果是不同的,如x=5是对的,5=x是错的,A+B=C是错的,C=A+B是对的.3°不能利用赋值语句进行代数式的演算(如化简、因式分解、解方程等),如y=x2-1=(x-1)(x+1),这是实现不了的.在赋值号右边表达式中每一个变量的值必须事先赋给确定的值.在一个赋值语句中只能给一个变量赋值,不能出现两个或以上的“=”.但对于同一个变量可以多次赋值.4、条件结构和条件语句(1)一个算法中,经常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向,条件结构就是处理这种过程的结构.用程序框图表示条件结构如下图:(2)条件语句1°“IF—THEN—ELSE”语句格式:IF 条件THEN语句体1ELSE语句体2END IF功能:在“IF—THEN—ELSE”语句中,“条件”表示判断的条件,“语句体1”表示满足条件时执行的操作内容;“语句体2”表示不满足条件时执行的操作内容;END IF表示条件语句的结束.计算机在执行“IF—THEN—ELSE”语句时,首先对IF后的条件进行判断,如果符合条件,则执行THEN后面的“语句1”;若不符合条件,则执行ELSE后面的“语句2”.2°“IF—THEN”语句格式:IF 条件THEN语句体END IF功能:“条件”表示判断的条件;“语句”表示满足条件时执行的操作内容,条件不满足时,直接结束判断过程;END IF表示条件语句的结束.计算机在执行“IF—THEN”语句时,首先对IF后的条件进行判断,如果符合条件就执行THEN后边的语句,若不符合条件则直接结束该条件语句,转而执行其他后面的语句.(3)相同点:首先对IF后的条件进行判断,如果符合条件就执行THEN后边的语句.不同点:对于“IF—THEN—ELSE”语句,若不符合条件,则执行ELSE后面的“语句体2”.对于“IF—THEN”语句,若不符合条件则直接结束该条件语句,转而执行其他后面的语句.(4)程序中的条件语句与程序框图中的条件结构存在一一对应关系如下图:5、循环结构和循环语句(1)循环结构循环结构有两种形式:当型循环结构和直到型循环结构.1°当型循环结构,如图(1)所示2°直到型循环结构,如图(2)所示,(1)当型循环结构(2)直到型循环结构(2)循环语句1°当型循环语句当型(WHILE型)语句的一般格式为:WHILE 条件循环体WEND功能:计算机执行此程序时,遇到WHILE语句,先判断条件是否成立,如果成立,则执行WHILE和WEND之间的循环体;然后返回到WHILE语句再判断上述条件是否成立,如果成立,再执行循环体,这个过程反复执行,直到一次返回到WHILE语句判断上述条件不成立为止,这时不再执行循环体,而是跳到WEND语句后,执行WEND 后面的语句.因此当型循环又称“前测试型”循环,也就是我们经常讲的“先测试后执行”“先判断后循环”.2°直到型循环语句直到型(UNTIL型)语句的一般格式为:DO循环体LOOP UNTIL 条件功能:计算机执行UNTIL语句时,先执行DO和LOOP UNTIL之间的循环体,然后判断“LOOP UNTIL”后面的条件是否成立,如果条件不成立,返回DO语句处重新执行循环体.这个过程反复执行,直到一次判断“LOOP UNTIL”后面的条件成立为止,这时不再返回执行循环体,而是跳出循环体执行“LOOP UNTIL条件”下面的语句.因此直到型循环又称“后测试型”循环,也就是我们经常讲的“先执行后测试”“先循环后判断”.(3)相同点:都是反复执行循环体语句.不同点:当型循环语句是先判断后循环,直到型循环语句是先循环后判断.(4)下面为循环语句与程序框图中的条件结构的一一对应关系.1°直到型循环结构:2°当型循环结构:例1 编写程序,使任意输入的3个整数按从大到小的顺序输出.算法步骤如下:第一步,输入3个整数a,b,c.第二步,将a与b比较,并把小者赋给b,大者赋给a.第三步,将a与c比较,并把小者赋给c,大者赋给a(此时a已是三者中最大的).第四步,将b与c比较,并把小者赋给c,大者赋给b(此时a,b,c已按从大到小的顺序排列好).第五步,按顺序输出a,b,c.如下图所示,上述操作步骤可以用程序框图更直观地表达出来.例2 编写程序,输出两个不相等的实数a、b的最大值.解:算法一:第一步,输入a, b的数值.第二步,判断a,b的大小关系,若a>b,则输出a的值,否则,输出b的值.算法二:第一步,输入a,b的数值.第二步,判断a,b的大小关系,若b>a,则将b的值赋予a;否则,直接执行第三步. 第三步,输出a的值,结束.(程序框图如下图)知识改变命运。
《算法初步》知识点总结1、在数学中,算法通常是指按照一定规则解决某一类问题的明确和有限的步骤.现在,算法通常可以编成计算机程序,让计算机执行并解决问题.算法的特征:①确定性②逻辑性③有穷性2、程序框图图形符号名称功能终端框(起止框)表示一个算法的起始和结束输入、输出框表示一个算法输入和输出的信息处理框(执行框)赋值、计算判断某一条件是否成立,成立时在出口处标明判断框“是”或“Y”;不成立时标明“否”或“N”流程线连接程序框连接点连接程序框图的两部分3、输入、输出和赋值语句(1)输入语句输入语句的格式:INPUT“提示内容”;变量例如:INPUT “x=”;x功能:实现算法的输入变量信息(数值或字符)的功能.要求:1°输入语句要求输入的值是具体的常量.2°提示内容提示用户输入的是什么信息,必须加双引号,提示内容“原原本本”的在计算机屏幕上显示,提示内容与变量之间要用分号隔开.3°一个输入语句可以给多个变量赋值,中间用“,”分隔.形式如:INPUT“a=,b=,c=,”;a,b,c(2)输出语句输出语句的一般格式:PRINT“提示内容”;表达式例如:PRINT“S=”;S功能:实现算法输出信息(表达式)的功能.要求:1°表达式是指算法和程序要求输出的信息.2°提示内容提示用户要输出的是什么信息,提示内容必须加双引号,提示内容要用分号和表达式分开.3°如同输入语句一样,输出语句可以一次完成输出多个表达式的功能,不同的表达式之间可用“,”分隔.形式如:PRINT “a,b,c:”;a,b,c(3)赋值语句赋值语句的一般格式:变量=表达式.赋值语句中的“=”称作赋值号.功能:将表达式所代表的值赋给变量.要求:1°赋值语句左边只能是变量名字,而不是表达式,右边表达式可以是一个常量、变量或含变量的运算式.如:2=x是错误的.2°赋值号的左右两边不能对换.赋值语句是将赋值号右边的表达式的值赋给赋值号左边的变量.如“A=B”“B=A”的含义运行结果是不同的,如x=5是对的,5=x是错的,A+B=C是错的,C=A+B是对的.3°不能利用赋值语句进行代数式的演算(如化简、因式分解、解方程等),如y=x2-1=(x-1)(x+1),这是实现不了的.在赋值号右边表达式中每一个变量的值必须事先赋给确定的值.在一个赋值语句中只能给一个变量赋值,不能出现两个或以上的“=”.但对于同一个变量可以多次赋值.4、条件结构和条件语句(1)一个算法中,经常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向,条件结构就是处理这种过程的结构.用程序框图表示条件结构如下图:(2)条件语句1°“IF—THEN—ELSE”语句格式:IF 条件THEN语句体1ELSE语句体2END IF功能:在“IF—THEN—ELSE”语句中,“条件”表示判断的条件,“语句体1”表示满足条件时执行的操作内容;“语句体2”表示不满足条件时执行的操作内容;END IF表示条件语句的结束.计算机在执行“IF—THEN—ELSE”语句时,首先对IF后的条件进行判断,如果符合条件,则执行THEN后面的“语句1”;若不符合条件,则执行ELSE后面的“语句2”.2°“IF—THEN”语句格式:IF 条件THEN语句体END IF功能:“条件”表示判断的条件;“语句”表示满足条件时执行的操作内容,条件不满足时,直接结束判断过程;END IF表示条件语句的结束.计算机在执行“IF—THEN”语句时,首先对IF后的条件进行判断,如果符合条件就执行THEN后边的语句,若不符合条件则直接结束该条件语句,转而执行其他后面的语句.(3)相同点:首先对IF后的条件进行判断,如果符合条件就执行THEN后边的语句.不同点:对于“IF—THEN—ELSE”语句,若不符合条件,则执行ELSE后面的“语句体2”.对于“IF—THEN”语句,若不符合条件则直接结束该条件语句,转而执行其他后面的语句. (4)程序中的条件语句与程序框图中的条件结构存在一一对应关系如下图:5、循环结构和循环语句(1)循环结构循环结构有两种形式:当型循环结构和直到型循环结构.1°当型循环结构,如图(1)所示2°直到型循环结构,如图(2)所示,(1)当型循环结构(2)直到型循环结构(2)循环语句1°当型循环语句当型(WHILE型)语句的一般格式为:WHILE 条件循环体WEND功能:计算机执行此程序时,遇到WHILE语句,先判断条件是否成立,如果成立,则执行WHILE和WEND之间的循环体;然后返回到WHILE语句再判断上述条件是否成立,如果成立,再执行循环体,这个过程反复执行,直到一次返回到WHILE语句判断上述条件不成立为止,这时不再执行循环体,而是跳到WEND语句后,执行WEND后面的语句.因此当型循环又称“前测试型”循环,也就是我们经常讲的“先测试后执行”“先判断后循环”.2°直到型循环语句直到型(UNTIL型)语句的一般格式为:DO循环体LOOP UNTIL 条件功能:计算机执行UNTIL语句时,先执行DO和LOOP UNTIL之间的循环体,然后判断“LOOP UNTIL”后面的条件是否成立,如果条件不成立,返回DO语句处重新执行循环体.这个过程反复执行,直到一次判断“LOOP UNTIL”后面的条件成立为止,这时不再返回执行循环体,而是跳出循环体执行“LOOP UNTIL条件”下面的语句.因此直到型循环又称“后测试型”循环,也就是我们经常讲的“先执行后测试”“先循环后判断”.(3)相同点:都是反复执行循环体语句.不同点:当型循环语句是先判断后循环,直到型循环语句是先循环后判断.(4)下面为循环语句与程序框图中的条件结构的一一对应关系.1°直到型循环结构:2°当型循环结构:例1 编写程序,使任意输入的3个整数按从大到小的顺序输出.算法步骤如下:第一步,输入3个整数a,b,c.第二步,将a与b比较,并把小者赋给b,大者赋给a.第三步,将a与c比较,并把小者赋给c,大者赋给a(此时a已是三者中最大的).第四步,将b与c比较,并把小者赋给c,大者赋给b(此时a,b,c已按从大到小的顺序排列好).第五步,按顺序输出a,b,c.如下图所示,上述操作步骤可以用程序框图更直观地表达出来.例2 编写程序,输出两个不相等的实数a、b的最大值.解:算法一:第一步,输入a,b的数值.第二步,判断a,b的大小关系,若a>b,则输出a的值,否则,输出b的值.算法二:第一步,输入a,b的数值.第二步,判断a,b的大小关系,若b>a,则将b的值赋予a;否则,直接执行第三步. 第三步,输出a的值,结束.(程序框图如下图)。