(共16张PPT)
算法的控制结构
2.2
算法的描述-流程图
用一些图形符号和带箭头的流程线表示规定的操作
基本图形
开始、结束符
输入、输出框
开始
输入变量a的值
处理框
a=b+c
判断框
a=1
流程线
连接点
判断任意一个一元二次方程是否有实数根
开始
输入a、b、c
a2-4ac>=0
结束
输出“该方程有实数根”
输出“该方程没有实数根”
Y
N
算法的描述
两个瓶子A和B ,A瓶装有雪碧,B瓶装有可乐。问:如何把雪碧和可乐互换,即:A瓶原来装雪碧,现改为装可乐;B瓶原来装可乐,现改为装雪碧。
1、拿出空瓶子C
2、将A中的雪碧倒入C中
3、将B中的可乐倒入A中
4、将C中的雪碧倒入B中
开始
拿出空瓶C
C←A
结束
A←B
B←C
算法的描述
求两个数之间的最大值
1、输入数字a、b的值
2、若a大于b,则输出a;否则输出b
开始
输入数字a、b的值
a>b
输出a
输出b
Y
N
结束
例题
某算法的流程图如下图所示,执行该算法,当x的值为4时,则输出y的值为( )
A.9 B.10
C.11 D.12
例题
某算法的自然语言描述与流程图表示分别如下:
自然语言
第1步:输入一个实数x
第2步:判断x与0的大小关系,若x<0,则y=2x-1,否则y=x2-1
第3步:输出y的值
第4步:算法结束
则流程图中处理框①、②处可分别填入的是( )
A.①y←x2-1 ②x←2x-1
B.①y←x2-1 ②y←2x-1
C.①y←2x-1 ②y←x2-1
D.①x←x2-1 ②y←2x-1
算法的描述
分别输出1-100
1、设定x为1
2、若x于等于100,则输出x,否则结束
3、让x加1,返回步骤2
1、输出1
2、输出2
3、输出3
……
100、输出100
算法的描述
分别输出1-100
1、设定x为1
2、若x小于等于100,则输出x,否则结束
开始
x<=100
输出x
Y
N
结束
3、让x加1,返回步骤2
x=1
x←x+1
累加器
例题
a←0
a≧0
输出a
N
Y
b←1
设置条件时注意算法的有穷性
例题
葡萄 15
玉米 8
酸奶 10
算法的描述
2、输入条形码code
3、在数据库中找到code对应商品名称name和价格x
4、将x与总额total相加
5、如果按下结算健,输出花费总额total;否则转到步骤1
开始
输入条形码code
在数据库中找到code对应商品的名称name和价格x
将花费总额total初始化为0
按下结算健
输出total
total<-total+x
Y
N
结束
1、设花费总额total为0,商品名称为name,价格为x,条形码为code
例题
某循环结构算法的部分流程图如图所示。下列说法正确的是( )
A ①处只能填“否”,②处只能填“是”
B 必须先执行情况①指向的任务,才能执行情况②指向的任务
C “任务序列”为空时,此算法可能不符合有穷性的特征
D “任务序列”中允许包含分支结构,但不能再包含循环结构
C
算法的描述
某算法的部分流程图如下图所示,执行这部分流程后,变量x的值是( )
A.0 B.1 C.2 D.3
例题
1、判断一个流程图是什么控制结构
2、判断一个问题需要什么控制结构解决
算法的描述
例题
某商场促销打折,折扣规定如下:消费500元以内的打8.8折;满500元(含500元)的打8折;满1000元及以上的打7折。用算法描述这一消费规定,合适的算法控制结构是( )
A 顺序结构
B 分支结构
C 循环结构
D 树形结构
B