模块框架
高考要求
算法
初步
要求层次
重难点
算法及其程序框图
算法的含义
A
1)算法的含义、程序框图
了解算法的含义,了解算法的思想.
理解程序框图的三种基本逻辑结构:顺序、条件分支、循环.
2)基本算法语句
理解几种基本算法语句――输入语句、输出语句、赋值语句、条件语句、循环语句的含义.
程序框图的三种基本逻辑结构
B
基本算法语句
A
知识内容
一、算法的概念与描述
1.算法的概念:由基本运算及规定的运算顺序所构成的完整的解题步骤,或者看成按照一定规则解决某一类问题的明确的和有限的步骤,称为算法(algorithm).
通常可以编成计算机程序,让计算机执行并解决问题.
2.算法的特征:
有穷性:算法必须在执行有限步后结束,通常还理解为实际上能够容忍的合理限度;
确定性:算法的每一个步骤必须有确定的含义;
可行性:组成算法的每个步骤和操作必须是相当基本的,原则上都是能精确地执行的;
输入:有零个或多个输入:
输出:有一个或多个输出.
3.算法的描述:
用自然语言;用数学语言;用算法语言(程序设计语言);用程序框图(流程图).
4.算法的三种基本逻辑结构:顺序结构、条件(分支)结构和循环结构.
顺序结构:最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的.如下图,只有在执行完A框指定的操作后,才能接着执行B框指定的操作;
条件(分支)结构:在一个算法中,用来处理需要根据条件是否成立有不同的流向的结构.
常见的条件结构的程序框图有下面两种形式:
             
循环结构:从某处开始,按照一定的条件反复执行某些步骤的情况,就是循环结构,其中反复执行的步骤称为循环体.
常见的循环结构的框图对应为:
<教师备案>
1.在画程序框图时,从开始框沿箭头必须能到达结束框,特别是条件分支结构应沿每条支路都能到达结束框,流程线必须加箭头表示顺序.
2.对于循环结构有如下需要注意的情况:
循环结构非常适合计算机处理,因为计算机的运算速度非常快,执行成千上万次的重复计算,只不过是一瞬间的事,且能保证每次的结果都正确;
循环结构要有中止循环体的条件,不能无休止的运算下去,循环结构中一定包含条件结构,如就是中止循环的条件;
循环结构的关键是,要理解累加变量代替是一个累加变量, 是计数变量,每循环一次,都要发生变化,这两步要重复计算若干次;
一种循环结构是先判断是否成立,若是,执行循环体;若否,则中止循环,像这样,每次执行循环体前对控制循环条件进行判断,条件满足时执行循环体,不满足则停止,称为当型循环.除了当型循环外,常用的循环结构还有直到型循环.
5程序框图的概念:用一些通用的图形符号构成的一张图来表示算法,称为程序框图(简称框图).
常用图形符号:
图形符号
名称
符号表示的意义
起、止框
框图的开始或结束
输入、输出框
数据的输入或者结果的输出
处理框
赋值、执行计算语句、结果的传送
判断框
根据给定条件判断
流程线
流程进行的方向
连结点
连结另一页或另一部分的框图
<教师备案>
1.画程序框图的规则:
使用标准的框图的符号;
框图一般按从上到下、从左到右的方向画;
除判断框外,大多数框图符号只有一个进入点和一个退出点.判断框是具有超过一个退出点的惟一符号;
一种判断框是不是两分支的判断,而且有且仅有两个结果;另一种是多分支判断,有几种不同的结果;
在图形符号内描述的语言要非常简练清楚.
2.画程序框图要注意的几点:
起、止框是任何流程不可少的,表示程序的开始和结束;
输入、输出框可以用在算法中任何需要输入、输出的位置;
算法中间要处理数据或计算,可分别写在不同的处理框内;
当算法要求你对两个不同的结果进行判断时,要写在判断框内;
一个算法步骤到另一个算法步骤用流程线连结;
如果一个框图需要分开来画,要在断开处画上连结点,并标出连结的号码.
如:用海伦公式求任意三角形的面积的程序框图,其中断开处画上连结点,并标出连结的号码.
二.基本算法语句
Basic语言(A版)
1.将算法转变成计算机能够理解和能在计算机上实现的程序,这就需要程序语言,每一种程序语言都包含一些基本的语句,程序语言的基本语句结构:输入语句、输出语句、赋值语句、条件语句、循环语句.
2.赋值语句:表明赋给某一个变量一个具体的确定值的语句.
一般格式:变量=表达式.其中, “=”叫做赋值号.
作用:先计算出赋值号右边表达式的值,然后将它赋给左边的变量,使该变量的值等于表达式的值.
3.输入语句:在每次程序运行时,用于输入相应的初始数据的语句,我们主要介绍键盘输入语句.
一般格式:INPUT  “提示内容;变量
例:INPUT  “Maths=” a
INPUT  “Chinese=”b
c=a+b/2
END
表示输入数学与语文的成绩,其中c表示它们的平均数.
4.输出语句:以某种形式把求解结果输出的语句.
一般格式:PRINT  “提示内容;表达式
如上例中输出平均成绩可以用:PRINT  “The average=”;(a+b/2
5.条件语句:处理条件结构的算法语句.有以下两种基本格式:
一般格式1IF  条件  THEN
语句体
END IF
计算机执行语句时,先对IF后的条件进行判断,如果(IF)条件符合,那么(THEN)执行语句体,否则执行END IF之后的语句.
一般格式2IF  条件  THEN
语句体1
ELSE
语句体2
END IF
计算机执行语句时,先对IF后条件进行判断,如果(IF)条件符合,那么(THEN)执行语句体1,否则(ELSE)执行语句体2
6.循环语句:处理算法中的循环结构的语句;
有两种基本语句:UNTIL语句和WHILE语句,前者称为直到型循环语句,后者称为当型循环语句.
UNTIL语句:DO
循环体
LOOP UNTIL  条件
WHILE语句的一般格式:WHILE  条件
循环体
WEND
Scilab程序语言(B版)
1.将算法转变成计算机能够理解和能在计算机上实现的程序,这就需要程序语言,每一种程序语言都包含一些基本语句,程序语言的基本语句结构:输入语句、输出语句、赋值语句、条件语句、循环语句.
2.赋值语句:表明赋给某一个变量一个具体的确定值的语句.
一般格式:变量名表达式;其中叫做赋值号.
作用:先计算出赋值号右边表达式的值,然后将它赋给左边的变量,使该变量的值等于表达式的值.
3.输入语句:在每次程序运行时,用于输入相应的初始数据的语句,我们主要介绍键盘输入语句.
Scilab中的输入语句常用的是:“input”
一般格式:变量名=input提示内容
例:a=input“x1”);b=input“x2”);aver=a+b/2
表示输入的值,求它们的算术平均数,
Scilab界面内运行结果如下:
-
->a=input"x1");b=input"x2");aver=a+b/2
x1-->
此时通过键盘输入x1的值,如,再按“Enter”键,界面出现:
x2-->
输入x2的值,如,再按“Enter”键,这时界面出现:
aver  =
    5
4.输出语句:以某种形式把求解结果输出的语句.
Scilab中有:printwriteformatprintfdisp等输出语句,主要介绍print语句:
一般格式:print%io2),表达式);其中参数%io2)表示在屏幕上输出.
5.条件语句:处理条件分支结构的算法语句.
Scilab程序语言中常用的条件语句为if语句.
一般格式:if  表达式
语句序列1
else
语句序列2
end
最简格式:if  表达式
语句序列1
end
6.循环语句:处理算法中的循环结构的语句;
Scilab有两种循环语句:for循环和while循环.
for循环的格式:for 循环变量=初值:步长:终值
循环体;
end
while语句的一般格式:while  表达式(即条件)
循环体;
end
<教师备案>
1.计算机能够直接或间接理解的程序语言有很多种,比如C语言,Basic语言,以及一些应用数学软件:MatlabMathsmaticsScilab对应的计算机语言.这里的基本语句结构在这些语言中都是存在的,但是对应不同的程序语言,都会有自己的输入指令与方法.这里是以一种语言为例,让大家理解程序语句的含义,为以后深入学习程序设计打下基础.
2.赋值语句:
赋值号左边只能是变量名,而不是表达式;如是错误的;
赋值号左右不能对换,是将赋值号右边的表达式的值赋给左边的变量;如表示用的值替代变量原先的值,与不同;
不能利用赋值语句进行代数式(或符号)的演算;如是不能实现的;并且在一个赋值语句中,只能给一个变量赋值;
赋值号与数学中的等号的意义不同,执行赋值语句后,右面表达式的值会赋给左边,如果左边变量原来有一个值,会自动被冲掉,如表示将的原值加再赋给,即的值加
3.输入语句:在某些算法中,变量的初值要根据情况经常地改变,一般我们把程序与初始数据分开,每次算题时,即使初始数据改变,也不必改变程序部分,只要程序运行时,输入相应的数据即可,这个过程在程序语言中,用输入语句来控制.输入语句中还有read输入语句等.
输入语句要求输入的一般都是具体的常数,也可输入单个或多个字符,格式为:
变量名=input提示内容“string”),string表示输入字符型变量.
4.循环语句:
for语句:先把初值赋给循环变量,记下终值和步长,循环变量增值到超过终值时,执行end后面的语句,不超过时,执行for后面的语句;循环变量起计数作用,控制算法中循环次数,有初值与终值,步长是指循环变量每次增加的值,步长为时,可以省略;
while语句:先判断条件是否成立,并在符合条件时,执行循环体;直到某次不符合时,跳到end后面的语句.
对应的基本框图是:
5.在程序语言中,乘、除、乘方、求平方根、绝对值,分别用下列符号表示:*/^sqrt()、abs().程序语言中,一般为赋值号,==表示等号.
分别写成:
在程序中,如果赋值语句后面用分号隔开,则被赋值的变量不会输出,一般不随便使用逗号或句号,而是直接使用回车或空格.
Scilab语句中,变量名一般用一个字母表示,不可以用几个字母表示.如可以用s表示变量名,但不能用sum表示变量名,但在有些程序语言中,可以用多个字母表示变量名.

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。