1、2018/6/30,算法知识结构:,算法,基本思想,程序化思想,基本结构,流程图,顺序结构与条件结构,循环结构,基本语句,条件语句,实际应用,经典算法,递推数列,输入输出语句赋值语句,循环语句,WHILE语句,UNTIL语句,当型,直到型,2018/6/30,有限性: 一个算法应包含有限的操作步骤而不能是 无限的。,确定性: 算法中每一个步骤应当是确定的,而不应当 是含糊的、模棱两可的。,有效性: 算法中每一个步骤应当能有效地执行,并得到 确定的结果。,输 入: 可以没有输入信息,可以有多个输入信息。,输 出: 至少要输出一个信息。,算法特征:,2018/6/30,常用的流程图符号:,起止框,
2、输入输出框,判断框,处理框,流程线,一、流程图,2018/6/30,1、自然语言、流程图、程序语言,2、流程图(顺序结构,条件结构,循环结构),(1)顺序结构是指在一个算法中运算是按照步骤依次执行的,这是一种最简单的算法结构,也是任何一个算法必不可少的逻辑结构。,(2)顺序结构的流程图如图,二、算法的表示及算法的三种结构,A. 顺序结构:,2018/6/30,(1)条件结构是指在算法中有时要进行判断,判断的结果直接决定后面的执行步骤,这样的结构叫做条件结构。,(2)条件结构、条件语句,两个分支,一个分支,B. 条件结构:,2018/6/30,(1)循环结构的三要素,(2)循环结构的设计步骤:,
3、循环结构是指在算法中从某处开始,按照一定 的条件反复执行某一处理步骤的结构。,循环变量,循环体、循环的终止条件。,3)确定循环的终止条件。,1)确定循环结构的循环变量和初始条件,2)确定算法中需要反复执行的部分,即循环体;,C. 循环结构:,2018/6/30,Until(直到型)循环,两种循环结构的区别,先执行循环体,然后再检查条件是否成立,如果不成立就重复执行循环体,直到条件成立退出循环。,先执行 后判断,While(当型)循环,先判断指定的条件是否成立,若条件成立,执行循环条件,否则退出循环。,先判断 后执行,2018/6/30,循环语句,WHILE 条件 循环体WEND,(2)WHIL
4、E 语句的一般格式:,Until(直到型)循环,DO 循环体LOOP UNTIL 条件,(1)UNTIL语句的一般格式:,2018/6/30,()输入、输出语句,()赋值语句(交换两个变量的值),输入、输出、赋值语句,赋值语句的一般格式为:,变量名=表达式,INPUT “提示内容” ; 变量1,变量2,,PRINT “提示内容” ; 表达式1,表达式2,,2018/6/30,基础练习:,1.指出下列程序的算法功能,i=1s=0WHILE i=100 s=s+i i=i+1WENDPRINT sEND D,2018/6/30,2.根据程序框图编写程序,A,B,C,2018/6/30,典型例题:,
5、例1.编写程序,输入一元二次方程ax2+bx+c=0的系数,输出它的实数根。,练习.编写程序,输入一个大于2的整数,判断这个数是不是质数?,2018/6/30,例2.设计算法,输出1000以内整除15的所有整数,并且求它们的和。,i=1S=0WHILE i1000PRINT SEND,2018/6/30,i=1s=0WHILE s=10 s=s+i/(i+1) i=i+1WENDPRINT iEND,2018/6/30,2018/6/30,重点关注:,INPUT “m,n=“;m,nDO r=m MOD n m=n n=rLOOP UNTIL r=0PRINT mEND,1.辗转相除法、更相减损术 求两个数的最大公约数,2.秦九韶算法(1)递推法;(2)列表法,3.进位制转化,当x=5时,用秦九韶算法求f(x)=2x6-5x5-4x3+3x2-6x的值.,(1) 234化成2进制数;234(8)化成6进制数(3)能看懂程序,2018/6/30,i=12s=1DO s=s*i i=i-1LOOP UNTIL “条件”PRINT sEND 第1题,1.若左边的程序输出的结果为132,则“条件”为_;,课堂练习:,2018/6/30,3.求100以内所有偶数之和.,