(共24张PPT)
计算机解决问题的过程
学习目标
1、了解计算机解决问题的过程,认识算法
2、能够掌握算法的描述方法
3、区分算法的三种基本结构以及对应流程图
4、了解程序设计语言的发展
计算机解决问题的4个步骤
——分析问题
——设计算法
——编写程序
——调试与维护
相当于做数学题时的
——审题
——思考
——解题
——验算
一、什么是算法?
算法:解决问题的方法与步骤
算法是在有限步骤内求解某一问题所使用的一组定义明确的规则。
通俗点说,就是计算机解题的过程
生活中的算法:一系列活动的流程与策略,如:食堂打饭、超市购物等。
食堂打饭:确定自己要吃的 排队购买 刷卡
超市购物:确定自己要买的 挑选 刷卡/刷脸
二、如何描述算法呢?
要让计算机解决问题,必须明确地告诉它要处理的具体对象和每一步的准确的处理过程。
描述算法的方法:自然语言和流程图
思考:如何把大象装进冰箱?
自然语言:人们日常生活中使用的语言,汉语,英语,日语等都是自然语言,这些自然语言描述算法符合我们的表达习惯,且容易理解。
算法的描述-自然语言
使用流程图描述算法
流程图:也叫程序框图,是算法的一种图形化表示方法,与自然语言描述算法相比,用流程图描述算法形象、直观、更容易理解。
使用流程图描述算法
图形符号 名称 功能
起止框 表示一个算法的起始和结束
输入/输出框 表示输入和输出的信息
处理框 赋值、计算等处理
判断框 表示判断的条件
流程线 指向算法运行的方向
连接符 表示流程图的接续
如何用流程图表示把大象关进冰箱需要几步?
用自然语言描述
S1:拉开冰箱门;
S2:大象进入冰箱;
S3:关上冰箱门。
这种自上而下表示先后顺序的结构为顺序结构。
算法共有三种基本结构
用流程图表示
S1
S2
S3
三、算法的三种基本结构
顺序结构:顺序结构是最简单的算法结构,按从上到下的先后顺序依次执行程序语句。
分支结构:也称选择结构,在算法中通过对条件的判断,根据条件是否成立而选择不同流向的算法结构。
注意:无论P条件是否成立,只能执行A框或B框之一,不可能同时执行A框和B框,也不可能都不执行。
3. 循环结构:按照一定条件,反复执行某一处理步骤的情况。反复执行的处理步骤为循环体。显然,循环结构中一定包含分支结构。
识记并区分算法三种基本结构的流程图
分支结构的应用-如果“大象太大无法进入冰箱”,怎么办?
用自然语言描述
如果大象太大无法进入冰箱,
那么就换一只小象进。
用流程图表示
象太大?
进入
换小象
是
否
做出判断
循环结构的应用-如果有三只小象进冰箱,怎么解决?
用自然语言描述
一只一只地进入,直到三只小象都进入冰箱,即完成。
周而复始
用流程图表示
进入一只小象
三只都进入冰箱了?
是
否
0和1构成,计算机直接执行;
但难以理解和操作
符号化的机器语言,
为特定的计算机系统而设计
Java、 C、VB、 C++
可读性更强,便于修改和维护
机器语言
汇编语言
高级语言
四、程序设计语言的发展
小结
计算机解决问题的4个步骤:
分析问题 —> 设计算法 —> 编写程序 —> 调试与维护
算法:解决问题的方法和步骤
描述算法的2种方法:自然语言和流程图
流程图的三种基本结构:顺序结构,分支结构,循环结构
程序设计语言的发展:机器语言、汇编语言、高级语言
课后检测
1.下列不属于计算机程序设计语言的是( )
A. 汇编语言 B. 高级语言
C. 自然语言 D. 机器语言
C
课后练习
2.如下流程图中属于循环结构的是( )
A.①③ B.①②④ C.②④ D.②③④
C
课后练习
3.用流程图表示条件“A>B”是否成立,要用到以下哪个图形?
A
课后练习
4.右侧图形符号“"在算法描述流程图中表示( ) )
A.算法的开始或结束
B.输入输出操作
C.处理或运算的功能
D.用来判断条件是否满足需求
C
课后练习
5.以下编程语言,代码执行效率最高的是
A.Python语言
B.C++语言
C.机器语言
D.汇编语言
C
课后练习
6.我们可以 通过程序设计语言编写计算机程序,开发软件,下列说法正确的是( )
A.Python作为一种简单开源的计算机程序设计语言,书写格式不受限制
B.汇编语言比高级语言可读性更强
C.高级语言更接近自然语言,更容易学习
D.机器语言比高级语言执行效率低
C
课后练习
7.运行一下流程图算法,输出结果是( )
A. 24 40 72 B. 24 40 48
C. 24 24 24 D. 8 8 8
A
课后练习
5.在《几何原本》一书中,“辗转相除法”可以求出任意两个正整数的最大公约数。具体步骤如下:
(1) 输入两个正整数m和n
(2) 以m除以n,得到余数r
(3) 若r=0,则输出n的值,算法结束;否则执行步骤(4)
(4) 令m←n,n←r,并返回步骤(2)
其算法可用以下流程图来描述:
请补充完成流程图(填写正确答案字母)
r←m%n
√
END