内容正文:
解决问题的一般过程
1
今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?
解决问题的一般过程
2
已知信息:笼内鸡兔共35个头,94只脚
由已知信息,综合所学知识,思考问题解决的过程和方法
列出方程式计算求解
分析问题
寻找解决问题的途径与方法
解决问题并验证结果
解决问题的一般过程
解决问题的一般过程
3
分析问题
寻找解决问题的途径与方法
解决问题并验证结果
收集相关的资料
明确问题求解的目标、已知条件和相关规则等
找出已知和未知之间的关系
将问题与已知条件相关联,设计问题求解的方案
检验答案和评估效果,实现问题的最终解决
解决问题的一般过程
4
用计算机解决问题的过程
运算速度快
计算精度高
逻辑运算能力强
存储容量大
自动化程度高
用计算机解决问题,能在一定问题上提高问题解决的效率。
5
用计算机解决问题的过程
用计算机解决问题
让计算机按照程序执行指令
小明想用PPT向大家介绍自己的家乡
解决鸡兔同笼问题
使用已有的程序来解决问题
根据需要自己编写程序来解决问题
张老师需要统计月考成绩
6
提出问题
分析问题
设计方案
编程调试
用计算机解决问题的过程
解决问题
设计算法
利用计算机程序设计语言描述算法
如果问题没有解决
7
算法的概念及描述
8
算法的概念
算法是指为解决某一类问题而采取的确定的、有限的步骤,它是描述某类问题求解的方法和详细过程。
鸡兔同笼问题
①设未知量,鸡的数量为x,兔的数量为y
②列出方程式:
x+y=35
2x+4y=94
③解方程式 x=23,y=12
解决鸡兔同笼问题的算法
9
算法的特征
上有三十五头,下有九十四足
初始状态
有零个或多个输入
①设未知量,鸡的数量为x,兔的数量为y
②列出方程式:
x+y=35
2x+4y=94
③解方程式 x=23,y=12
问题解决结果
有一个或多个输出
①设两个未知量x,y
有歧义
每个步骤都要有确定的含义
每个步骤都是可执行的步骤
在有限个步骤之后结束
10
1
5
4
2
3
输入项:一个算法一般要求有0个或多个输入
输出项:算法必须有一个或多个输出,反映问题解决的结果
有穷性:算法必须在执行有限次数之后结束
可执行性:算法的每个步骤必须是可以执行的
确定性:算法的每一步都有确定的含义,不能有歧义
算法的特征
11
算法的描述
描述算法就是将解决问题的步骤,用一种可理解的形式表示出来。
①设未知量,鸡的数量为x,兔的数量为y
②列出方程式:
x+y=35
2x+4y=94
③解方程式 x=23,y=12
自然语言描述
自然语言是指人们日常所用的语言,用自然语言描述算法就是使用人们能读懂的简短语句对算法的步骤进行描述。
繁琐
容易产生歧义
12
算法的描述
流程图描述算法:流程图用一些图形符号表示规定的操作,并用带箭头的流程线连接这些图形符号,表示操作进行方向。
名称 图形 功能
起止框 表示算法的开始、结束
输入与输出 表示数据的输入、输出
处理框 表示计算、赋值
判断框 表示某一条件是否成立
流程线 表示流程的发展方向
13
算法的描述
已知有一段2分钟的双声道音乐,采样频率为22.1kHZ,量化位数为16,求该音频所占存储空间大小。
开始
所占空间=22100×16×120×2÷8
输出所占空间
结束
14
算法的描述
输入两个数x,y,如果x>0,令x的值变为x+y,否则令x的值变为x-y,求x的最终值。
开始
输入x,y
x>0
x=x+y
x=x-y
输出x
结束
成立
不成立
15
算法的描述
伪代码描述算法:伪代码是一种比较直观简洁的、符号接近计算机程序代码的算法描述方式,其风格很像计算机程序设计语言,但又不是真正的可以被计算机理解的代码。
input x,y
if x>0
x=x+y
then
x=x-y
print x
开始
输入x,y
x>0
x=x+y
x=x-y
输出x
结束
成立
不成立
x=input()
y=input()
if x>0:
x=x+y
else:
x=x-y
print(x)
伪代码
程序设计语言代码
16
写出用公式法求解二元一次方程的算法
练习
自然语言描述
第一步:计算的值
第二步:判断Δ是否大于等于零
第三步:根据第二步判断结果
若Δ大于等于零,则计算,求出方程的解;若Δ小于零,输出该方程无解
第四步:输出方程的解或输出方程无解
17
练习
输出方程无实数根
开始
输入a,b,c
计算判别式
Δ≥0?
计算
输出方程有实数根,并输出x的值
结束
伪代码
If Δ≥0 then
输出“方程有实数解”
输出x
Else
输出“方程无实数解”
练习
练一练
下列关于算