高中数学算法初步

  • 格式:ppt
  • 大小:170.00 KB
  • 文档页数:25

下载文档原格式

  / 25
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
z1= A x0+ B y0+ C z2=A2+ B2 d=| z1|/ z2 d
结束
将A、B的值互换
开始
A, B
C=A A=B
B=C A, B
结束
2. 条件分支结构:依据制定条件选择执行不同 指令的控制结构
判断一个正整数是不是偶数
开始
S1 输入正整数A; S2 用2除此数求出余数r;
正整数A
r为A被2除
算法的三种逻辑结构与框图表示
1. 顺序结构:语句与语句之间,框与框之间按
从上到下的顺序进行。
开始
➢ S1 输入x0, y0, A, B, C ➢ S2 计算z1= A x0+ B y0+ C ➢ S3 计算z2=A2+ B2 ➢ S4 计算d=| z1|/ z2 ➢ S5 输出d
x0, y0, A, B, C
S2 将醋从B瓶倒入原来装酱油的A瓶内;B A ( A=B ) S3 将原来空瓶C内的酱油倒入原来装醋的B瓶内.
C B (B =C ) S4 调换完毕.
问题2 求有限整数系列中最大值
➢ S1 先假定序列中的第一个数为“最大值” ➢ S2 将序列中的下一个整数与“最大值”比较,
如果它大于“最大值”,则假定“最大值”是 这个整数 ➢ S3 如果序列中还有其它整数,重复前一步骤 直到没有可比的整数为止 ➢ S4 最后假定的“最大值”就是序列中的最大 整数
开始 S=0
i=1 N
i<=1000
Y
S= S+i
i=i+1
s
结束
顺序结构基本框图 条件分支结构基本框图
开始
Y 条件 N
A块
B块
结束
循环的基本框图
N Y
N Y
先判断后执行 先执行后判断 死 循 环
基本算法语句
如何在计算机上实现算法? ➢ 输入语句 ➢ 输出语句 ➢ 赋值语句 ➢ 条件语句 ➢ 循环语句
连接点 流程线
一个程序中两个部 分之间的连接 流程进行的方向
画程序框图的规则
➢ 使用标准的框图的符号。 ➢ 框图一般按照从上到下、从左到右的方向画。 ➢ 除判断框外,大多数框图符号只有一个进入点和一
个退出点。判断框是具有超过一个退出点的唯一符 号。 ➢ 一种判断框是“是”与“不是”两分支的判断,而 且有且仅有两个结果;另一种是多分支判断,有几 种不同的结果。 ➢ 在图形符号内描述的语言要非常简练清楚。
第三次求和 6 = 3+3 , 3 = 2+1,
第四次求和 10 = 6+4… 4 = 3+1 …
重复进行加法计算,直到加到1000为止
S = S+i, i=i+1
1 = 0+1, 3 = 1+2, 6 = 3+3 , 10= 6+4…重复进行加法计算
S1 s=0, i=1 S2 判断i<=1000,是则S3否则S6 S3 s=s+i S4 i=i+1 S5 执行S2 S6 输出s
算法初步
2020/3/27
1
具体课程目标
➢ 了解算法的含义,体会算法的思想,能说明解决简单问 题的算法步骤。
➢ 理解程序框图的三种基本逻辑结构:顺序、条件分支、 循环。能运用三种基本逻辑框图解决简单问题
➢ 理解几种基本算法语句:输入、输出、赋值、条件、循 三环。 能初步应用这些算法语句编写Scilab程序。
描写顺序结构的基本语句
➢ 赋值语句:a=3*xa +3; ➢ 输入语句:a=input(“math”);
➢ 输出语句:print(%io(2),a,b);

disp(“I am a student.”);
描写分支结构的基本语句
➢ 一般的If语句:

if 表达式

语句序列1;

else

语句序列2;
y=3*x+8
y=x-2
Y x>5 N y=3*x+8
描写循环结构的基本语句
While型循环:
while 表达式 语句序列(即循环体) end
表达式 N Y
循环体
for型循环:
for 循环变量=初值:步长:终值 语句序列(即循环体)
end
i=初值
i<=终
值Y
N
循环体
i=i+步长
循环语句的例
➢ 1. While 1+a>a
余数
S3 如果r为零则其为偶数,否则不 N r=0 Y
是偶数.
不是偶数
偶数
S4输出偶数或不是偶数信息。
结束
3.循环结构:根据制定条件决定是否重复执行 一条或多条指令的控制结构
例:求1+2+3+4+…+1000=?
S = S+i i = i+1
初值
0
第一次求和 1 = 0+1, 1
第二次求和 3 = 1+2, 2 = 1+1,
➢ 广义的算法 解决一类问题的一系列有序的步骤。
算法(总结)
➢ 算法特性: 1. 有穷性 2. 确定性 3. 通用性 4. 能行性 5. 有输出
➢ 算法的表示方法: 1. 自然语言描述 2. 数学语言 3. 程序框图
典型例
问题1:酱油与醋调换的算法 利用一个空瓶进行调换. (将A、B的值互换) S1 将酱油从A瓶倒入空瓶C;A C (C=A )
➢ 学习有条理地、清晰地表达解决问题的步骤,提高逻辑 思维能力
算法的定义
➢ 人教B版 可以理解为由基本运算及规定的运算顺序构成的完 整的解题步骤,或者看成按照要求设计好的有限的 确切的计算序列,并且这样的步骤或序列能够解决 一类问题。
➢ 人教A版
现代意义上的算法通常是指可以用计算机来解决某一类问题 的程序或步骤,这些程序或步骤必须是明确的有效的,而且 是在有限步内完成的。
问题2 求任意三个整数a,b,c中最大值
➢ S1 max=a ➢ S2 如果b>max,则max=b ➢ S3 如果c>max,则max=c ➢ S4 max就是a,b,c 中最大值
程序框图里常用的符号
起、止框 输入,输出框
处理框 判断框
开始或结束程序 数据的输入或结果 的输出 赋值、执行计算语 句、结果的传送 根据给定条件判断

end
➢ 最简单的If语句:

if 表达式

语句序列1;

end
Y 表达式 N
语句序列1
语句序列2
Y 表达式 N
语句序列1
If 语句的例
➢ 一般的If语句的例:

if x>5

y=3*x+8;

else

y=x-2;

end
➢ 最简单的If语句的例:

if x>5

y=3*x+8;

end
Y x>5 N

a=a/2;
➢ end
➢ 2. For i=1:1:6

n=n*i;
➢ end
N
a+1>a
Y
a=a/2
i=1
i<=6
Y
NFra Baidu bibliotek
n= n*i
i=i+1
例:求1+2+3+4+…+1000的和