内容正文:
算法及其描述
页面统一为16:9宽幅画面比例尺寸;PPT统一格式为PPT或PPTX。
中文:
1. 课名:微软雅黑48号字;
2.(第一课时):微软雅黑32号字;
3.学校名称:请填写全称;
4.学科、年级、主讲人、学校:华文楷体28号字(具体根据文字量可适当调整)。
英文
1.课名:字体以Times New Roman为主,字号一般使用32—36号,特别强调可以用40号;
2.(Period 1):字体使用Arial,字号为28;
3.正文一般用24—28号,特别强调可用32号。
注意标点的规范(例如:中文省略号为……,可用Shift+数字键6打出中文省略号,英文省略号为…)
1
有一个牧羊人带着一头羊,一只狼和一颗大白菜准备过河,他乘坐的船每次只能带一样东西过去,如果让狼与羊单独在一起,狼会吃羊;让羊与白菜单独在一起,羊会吃白菜,牧羊人该如何过河才能确保羊,狼和白菜都安全?
活动探究:过河问题
2
第一步:人和羊过河,人返回,留下羊
活动探究:过河方案
第二步:人和狼过河,人和羊返回,留下狼
第三步:人和菜过河,人返回,留下菜
第四步:人和羊过河
通过这四个步骤解决了人,羊,狼,白菜的过河问题,每一步骤可行且都具有明确性,这就是算法
3
算法的定义
算法:算法是指在有限步骤内求解某一问题所使用的一组定义明确的规则。
通俗地说,算法就是用计算机求解某一问题的办法,是能被机械地执行的动作或指令的有穷集合。
4
算法的定义
5
算法的特征
(1)有穷性
一个算法在执行有穷步之后必须结束,即一个算法所包含的计算步骤是有限的。
(2)确定性
算法执行的每一个步骤必须有确切的定义,不能出现模棱两可的情况。
6
算法的特征
(3)数据输入
一个算法必须有零个或多个数据输入,以刻画运算对象的初始情况。
(4)数据输出
一个算法有一个或多个输出,以反映对输入数据加工后的结果,没有输出的算法是毫无意义的。
7
算法的特征
(3)数据输入
一个算法必须有零个或多个数据输入,以刻画运算对象的初始情况。
(4)数据输出
一个算法有一个或多个输出,以反映对输入数据加工后的结果,没有输出的算法是毫无意义的。
8
算法的特征
(5)可行性
算法执行的任何计算步骤都可以被分解为基本的可执行的步骤,即每个计算步骤都可以在有限时间内完成。
9
练习巩固
1.下列不属于算法特征的是( )
A.可行性 B.至少有1个输出
C.唯一性 D.有穷性
2.下列关于算法的叙述,错误的是( )
A.算法一定有输入 B.算法必须有输出
C.算法必须执行有限步以后能结束
D.算法可以使用程序设计语言来实现
C
A
10
活动探究
鸡兔同笼问题:一个笼子里有鸡和兔,现在只知道里面一共有35个头,94个脚,问鸡和兔各有多少只?
11
算法的描述
1.自然语言
2.流程图
3.伪代码
12
用自然语言描述算法
用自然语言描述算法,就是用人们日常所用的语言,如汉语、英语等来描述算法。
第一步:设鸡的个数为x只;兔的个数为y个
x+y=35
2x+4y=94
第二步:列一元二次方程
第三步:求解得出x与y的值,结束算法
13
用流程图描述算法
用流程图描述算法是用程序框图来描述算法的一种表示方法。使用流程图可使算法更清晰、简洁。
图 形 名 称 功 能
开始/结束 表示算法的开始或结束
输入/输出 表示算法中变量的输入或输出
处理 表示算法中变量的计算与赋值等
判断 表示算法中的条件判断
流程线 表示算法中的流向
连接点 表示算法中的转接
流程图的基本图形及其功能
14
用流程图描述算法
开始
设鸡x=1
则兔y=35-x
2x+4y=94?
x=x+1
x<35?
结束
输出鸡x只,兔y只
Y
N
N
Y
15
用伪代码描述算法
用伪代码描述算法就是用介于自然语言和计算机语言之间的文字和符号来描述算法。
import math
x=1
while(0<x<35):
y=35-x
if(2*x+4*y==94):
print('鸡的数量:',x)
print('兔的数量:',y)
x=x+1
用伪代码描述鸡兔同笼问题
16
比较三种算法描述方法的优缺点
算法描述的方法 优势 不足
自然语言表示法
流程图表示法
伪代码表示法
分析归纳算法三种描述方法的优缺点。
比较三种算法描述方法的优缺点
算法描述的方法 优势 不足
自然语言表示法 容易掌握,通俗易懂 具有歧义性,难以清晰表达深层次结构算法
流程图表示法 流程清晰简洁 不适合步骤过多的算法,书写不便,修改不易
伪代码表示法 书