数学算法概念
2.一定的规则:设计算法的依据, 即不同的数学结论或方法不同的 规则得到的算法是不同的算法。
3.某一类问题:通用性有时也可把某 一具体问题的步骤看成算法 4.明确和有限:步骤最显著特征就是顺 序,每一步都是明确的,在有限步内完成 不能无限执行。
三、算法的特征
1.有限性(一个算法的步骤序列是有限 性的,必须在有限操作后停止不能无限)
y
3 5
5 代入①,得
x1 5
小结:解二元一次方程组的过程
1.步骤有一定的顺序性,打乱顺序不能 完成任务
2.步骤完整性缺一不可 3.步骤有限性 4.每步结果明确 5.步骤通用性,任何人只要按照步骤执
行就可以完成这类任务
参照上述思路,一般地,解方程
组
a1x b1 y c1 a2x b2 y c2
第四步,解④ ,得 y a1c2 a2c1 .
a1b2
a2b1
x
b2c1 b1c2
a1b2 a2b1
第五步,得到方程组的解为 y a1c2 a2c1
a1b2 a2b1
解: 第 一 步 : ② × a1 -
a1b2 a2b1 y a1c2 a2c1
① × a2 , 得 : ③
这是生活中的例子, 下面我们重要学习数次方程组你学过 哪些方法?
加减消元法和代入消元法
用加减消元法解二元一次方程组 x-2y=-1 ① 2x+y=1 ② 的具体步骤是什么?
x 2 y 1
①
2x y 1
②
第一步, ①+②×2,得 5x=1 . ③
第一步: 把冰箱门打开。 第二步: 把苹果放进冰箱。
第三步: 把冰箱门关上。
2.在家中烧开水的过程分几步? 第一步:打开壶盖加水盖上盖子
第二步:壶放在火上开火 第三步:水开后关火。
小结:这是生活中的算法,做这件事是
有先后顺序的,逻辑性的,打乱顺序就不 能完成任务,分三步完成步骤缺一不可,
步骤是有限的,每步的结果是明确的,每 步都有通用性,人们只要按照该步骤执行 可完成任务。谁家烧开水都会按这个顺序 完成的,只要按以上步骤做都可以完成这 一类问题,但他们不能用计算机来操作。
数学必修 3 第一章 算法初步 §1.1算法与程序框图 §1.1.1算法的概念(1)
2011年11月14日
算法作为一个名词,在中学课本中并没有出现过,没有学习过 什么叫算法这个概念。但是我们对算法并不陌生,从小学就开 始接触算法,熟悉许多问题的算法。如,数的四则运算要先乘 除后加减,从里往外脱括弧,竖式笔算等都是算法,还有乘法 口诀、珠算口诀更是算法的具体体现。生活中,菜谱是菜肴的 算法,洗衣机的说明书是操作洗衣机的算法,歌谱是歌曲的算 法,在数学中,我们主要研究用计算机实现的算法,即按照某 种机械程序步骤一定可以得到结果的解决问题的程序。从小学 到高中我们所学的算法很多是与计算有关的问题。比如解方程 的算法、函数求值的算法、作图的算法,等等。
2.确定性(算法中的每一步都是确定的, 并且能有效的执行且得到确定的结果,而不 应是摸棱两可) 3.有序性(前后顺序缺一不可) 4.不惟一性(对于一个问题有不同的算法) 5.通用性
四、算法的表现形式
1.自然语言 2。程序框图
3。程序语句
五、设计算法的格式step
第一步:…….. 第二步:……...
第二步, 解③,得 x 1 .
x1
5
5
第三步,②-①×2,得 5y=3 . ④
第四步,
解④,得
y3 .
5
第五步,得到方程组的解为
ìïïïïíïïïïî
x y
= =
1 5 3 5
.
x 2 y 1
①
2x y 1
②
代入消元法:
解:第一步:②-①×2得5y=3;③
第二步:解③得 y 3
第三步:将
①②(a1b2
a2b1
0)的基
本步骤是什么?
第一步,①× b2- ②× b1,得
(a1b2 a2b1)x b2c1 b1c2 . ③
第二步,解③ ,得 x b2c1 b1c2 .
a1b2 a2b1
第三步,②×a1 - ①×a2 ,得
(a1b2 a2b1) y a1c2 a2c1 . ④
因此,7是质数.
如果让计算机判断35是否为质数,如何设计 算法步骤?
第一步,用2除35,得到余数1,所以2不能整除35. 第二步,用3除35,得到余数2,所以3不能整除35.
第三步,用4除35,得到余数3,所以4不能整除35. 第四步,用5除35,得到余数0,所以5能整除35.
因此,35不是质数.
整数89是否为质数?如果让计算机判断 89是否为质数,按照上述算法需要设计 多少个步骤?
第一步,用2除89,得到余数1,所以2不能整除89.
第二步,用3除89,得到余数2,所以3不能整除89.
第三步,用4除89,得到余数1,所以4不能整除89.
…… …… …… ……
第八十七步,用88除89,得到余数1,所以88不能 整除89.
第二步:解③得
; y a1c2 a2c1
a1b2 a2b1
第三步:将
y
a1c2 a1b2
a2c1 a 2 b1
代入①,得 x
c1 b1 y a1
一、算法的定义
在数学中,算法通常是按照一定规则 解决某一类问题的明确和有限的步骤。
现在算法通常可以编写成计算机程序 让计算机执行并解决问题。
二、对算法定义的理解
在数学课上的算法,数学课上的计算机课,与计算机课上的数 学不一样,主要是利用计算机解决与数学有关的算术问题,利 用计算机解决一起我们所学过的数学问题。 计算工具:古代 算盘 现代:计算机 20世纪最伟大的发明:计算机,计算机是强大的实现各种算 法的工具。
下面通过几个具体的生活实例体会算法的含义。 1.把苹果装入冰箱里分几步?
. 第几步:……..
S1:………… S2:………..
. . . Sn:………..
知识探究(二):算法的步骤设计
如果让计算机判断7是否为质数,如何设计 算法步骤?
第一步,用2除7,得到余数1,所以2不能整除7.
第二步,用3除7,得到余数1,所以3不能整除7. 第三步,用4除7,得到余数3,所以4不能整除7. 第四步,用5除7,得到余数2,所以5不能整除7. 第五步,用6除7,得到余数1,所以6不能整除7.
【精品资料】高中数学课件:1算法的概念(新人教必修3)
例1:(2)设计一个算法,判断35是否为质数?
第一步:用2除35,得到余数1,所以2不能整除35.
第二步:用3除35,得到余数2,所以3不能整除35. 第三步:用4除35,得到余数3,所以4不能整除35. 第四步:用5除35,得到余数0,所以5能整除35.
因此,35不是质数.
练习4.写出求一元二次方程 ax2+bx+c=0
a1b2 a2b1 0
1 2 2 1
a b x c b c b (3)
第二步:解(3)得 第三步:
x
c1b2 c2b 1 a1b2 a2 b 1
a2b1 a1b2 y a2c1 a1c2
y a2 c1 a1c2 a2b1 a1b2
1、把冰箱门打开
2、把大象装进去 3、把冰箱门关上
2000春晚小品《钟点工》
又如家中烧开水的 过程分几步?
x 2 y 1 ① 问题1:请写出解二元一次方程组 2 x y 1 ②
的详细求解步骤. 第一步:①+2×②得: 5x=1 ③ 1 第二步: 解③得: x 5 第三步:②-①×2得: 5y=3 ④ 3 第四步: 解④得: y x 1 5 5 第五步:得到方程组的解为 3
B. 从一副扑克牌随意抽取3张扑克牌抽到
24点的可能性
C. 已知坐标平面内的两点求直线的方程
D. 加减乘除运算法则
概念辨析
3.有人对歌德巴赫猜想“任何大于4的偶数都 能写成两个奇质数之和”设计了如下操作步 第一步:检验6=3+3 骤: 第二步:检验8=3+5 第三步:检验10=5+5
利用计算机不断地进行下去!
的根的算法.
算法的概念
算法的概念——知能阐释一、知识精讲1.算法的含义算法可以理解为由基本运算及规定的运算顺序所构成的完整的解题步骤,或看成按要求设计好的有限的确切的计算序列,并且这样的步骤或序列能够解决一类问题。
说明:(1)算法一般是机械的,有时要进行大量的重复计算,只要按部就班地去做,总能算出结果。
通常把算法过程称为“数学机械化”,数学机械化的最大优点,是它可以让计算机来完成。
(2)实际上,处理任何问题都需要算法,中国象棋有中国象棋的棋谱,国际象棋有国际象棋的棋谱。
再比如,邮寄物品有其相应的手续,购买飞机票也有一系列的手续等等。
(3)求解某个问题的算法不唯一。
2.算法的特征(1)确定性:算法的每一步必须是确切定义的,且无二意性,算法只有唯一的一条执行路径,对于相同的输入只能得出相同的输出。
(2)有容性:一个算法必须在执行有穷次运算后结束,在所规定的时间和空间内,若不能获得正确结果,其算法也是不能被采用的。
(3)可行性:算法中的每一个步骤都必须能用实现算法的工具——可执行指令精确表达,并在有限步骤内完成,否则这种算法也是不会被采纳的。
(4)算法一定要根据输入的初始数据或给定的初值才能正确执行它的每一步骤。
(5)有输出,算法一定能得到问题的解,有一个或多个结果输出,达到求解问题的目的,没有输出结果的算法是没有意义的。
3.算法的描述(1)自然语言:自然语言就是人们日常使用的语言,可以是汉语、英语或数学语言等。
用自然语言描述算法的优点是通俗易懂,当算法中的操作步骤都是顺序执行时比较容易理解。
缺点是如果算法中包含判断或转向,并且操作步骤较多时,就不那么直观清晰了。
(2)框图(流程图):所谓框图,就是指用规定的图形符号来描述算法,用框图描述算法,具有直观、结构清晰、条理分明、通俗易懂、便于检查修改及交流等优点。
(3)程序设计语言:算法最终可通过程序的形式编写出来,并在计算机上执行。
程序设计语言可分为低级语言和高级语言,低级语言包括机器语言和汇编语言。
人教版高中数学必修三第一章-算法初步第一节《算法的概念》教学课件3(共21张PPT)
一人带着一只狼、一只羊和一箱蔬菜要过河,但只 有一条小船.乘船时,每次只能带狼、羊和蔬菜中的一 种.当有人在场时,狼、羊、蔬菜都相安无事.一旦人 不在,狼会吃羊,羊会吃菜.请设计一个方案,安全地将狼、 羊和蔬菜带过河.
过河游戏
如何发电子邮件?
假如你的朋友不会发电子邮件,你能教会他么? 发邮件的方法很多,下面就是其中一种的操作步骤:
第四步, 用5除35,得到余数0.因为余数为0, 所以5能整除35.因此,35不是质数.
变式: “判断53是否质数”的算法如下:
第1步,用2除53得余数为1,余数不为0,所以2不能整除53;
第2步,用3除53得余数为2,余数不为0,所以3不能整除53;
……
第52步,用52除53得余数为1,余数不为0,故52不能整除53;
第二步, 给定区间[a,b],满足f(a) ·f(b)<0.
第三步,
取中间点
m
a
2
b.
第四步, 若f(a) ·f(m) < 0,则含零点的区间为
[a,m];否则,含零点的区间b].
第五步,判断f(m)是否等于0或者[a,b]的长 度是否小于d,若是,则m是方程的近似解;否 则,返回第三步.
|a-b| 1
0.5 0.25 0.125 0.062 5 0.031 25 0.015 625 0.007 812 5 0.003 906 25
y=x2-2
1 1.25 1.5
1.375
2
于是,开区间(1.4140625,1.41796875)中 的实数都是当精确度为0.005时的原方程的近 似解.
判断“整数n(n>2)是否是质数”的算法 自然语言描述
第一步 给定大于2的整数n. 第二步 令i=2. 第三步 用i除n,得到余数r. 第四步 判断“r=0”是否成立.若是,则n不是质
【高中数学必修三】1.1.1 算法的概念
b2c1 b1c2 第二步:解(3)得:x a1b2 a2b1
(2) a1 (1) a2 : (a1b2 a2b1 ) y a1c2 a2c1 (4) 第三步:
a1c2 a2c1 第四步: 解(4)得:y a1b2 a2b1
b2 c1 b1c2 x a1b2 a 2 b1 a c a 2 c1 y 1 2 a1b2 a 2 b1
第三步:取区间中点 m
含零点的区间为 [m, b]. 将新得到的含零点的区间仍记为 [a, b]. 第五步:判断 [a, b] 的长度是否小于d或f(m)是否等于0. 若是,则m是方程的近似值;否则,返回第三步.
【例2】 x 2 2 0( x 0) 写出用“二分法”求方程 法. 取d=0.005,可以得到以下表格:
【例1】(1)设计一个算法,判断7是否为质数.
(2)设计一个算法,判断35是否为质数.
第一步:用2除35,得余数为1,所以2不能整除35. 第二步:用3除35,得余数为2,所以3不能整除35. 第三步:用4除35,得余数为3,所以4不能整除35. 第四步:用5除35,得余数为0,所以5能整除35. 因此,35不是质数.
简单地说,算法就是解决 问题的程序或步骤。
问题创设
小品“钟点工”片段
问: 要把大象装冰箱,分几步?
答:分三步:
第一步:打开冰箱门 第二步:把大象装冰箱 第三步:关上冰箱门
算法:就是解决一个问题的程序与步骤.
问题创设
x 2 y 1 ① 解二元一次方程组 , 2 x y 1 ② 并写出具体求解步骤
算法分析:按照逐一相加的程序进行. 算法1 第一步:计算1+2,得3;
算法的概念
gcd(60,24)=gcd(24,60 mod 24)=gcd(24,12) =gcd(12,24 mod 12)=gcd(12,0)=12
下面是该算法的一个更加结构化的描述。
1.1 算法的概念和描述
用于计算 gcd(m,n)的欧几里得算法:
第一步: 如果 n=0,返回 m的值作为结果,同时函数结束;否则,进入第二步。
第二步:m 除以 n,将余数赋给 r。
第三步: 将 n 的值赋给 m,将r 的值赋给 n,返回第一步。
我们也可以使用伪代码来描述这个算法:
算法 Euclid(m,n)
//使用欧几里得算法计算gcd(m,n)
//输入∶两个不全为0的非负整数m,n
//输出∶m,n的最大公约数
while n≠0do
{ r←mmodn
m←n
n←r
} return m
图1.2 欧几里得算法的流程图
上面的伪代码也可以用流程图来加以描述,如图1.2所示。
第一节、水文现象与桥涵水文的研究意义
第一章 算法的概念
↘1 . 1 ↘1 . 2
算法的概念和描述 算法的时间复杂度和空间复杂度
1.1 算法的概念和描述
【1.1பைடு நூலகம்1 算法的概念】
算法是一系列解决问题的清晰指令,也就是对于符合一定规范的输入在有限步骤内求
解某一问题所使用的一组定义明确的规则。通俗点说,就是计算机解题的过程。在这个过
程中,无论是形成解题思路还是编写程序,都是在实施某种算法。前者是推理实现的算法,
数学的算法知识点归纳总结
数学的算法知识点归纳总结数学的算法知识点归纳总结在数学领域中,算法是解决问题和完成计算任务的关键工具。
它们描述了完成特定操作或计算的一系列步骤。
本文将对数学中的各种算法进行归纳总结,帮助读者更好地理解和应用这些算法。
一、基本运算算法1. 加法算法:加法是数学中最基本的运算之一。
算法的基本步骤是垂直对齐两个加数,从右至左逐位相加,并记录下每一位的进位。
2. 减法算法:减法是加法的逆运算。
算法的基本步骤是垂直对齐被减数和减数,从右至左逐位相减,并记录下每一位的借位。
3. 乘法算法:乘法是将两个数相乘得到一个积的运算。
传统的乘法算法是将被乘数逐位与乘数相乘,并将乘积相加得到最终结果。
4. 除法算法:除法是将一个数分为若干等分的运算。
传统的除法算法是将除数逐位分别除以被除数,并将商相加得到最终结果。
二、数论算法1. 质数判断算法:质数是只能被1和自身整除的正整数。
判断一个数是否为质数的算法可以通过将该数与小于等于其平方根的所有正整数进行取余运算,如果能整除其中任何一个数,则该数为合数,否则为质数。
2. 最大公约数算法:最大公约数是两个或多个整数共有的约数中最大的一个。
欧几里得算法是一种辗转相除的算法,通过连续地将较大数除以较小数取余,直到余数为0,最后一个被除数即为最大公约数。
3. 最小公倍数算法:最小公倍数是两个或多个整数公有的倍数中最小的一个。
通过将两个数的乘积除以最大公约数即可得到最小公倍数。
三、代数算法1. 方程求解算法:方程是含有一个或多个未知数的等式。
求解代数方程的算法有很多种,包括直接求解、代数变形、因式分解、牛顿迭代等方法。
2. 矩阵运算算法:矩阵是一个按照轴对称排列的数表。
矩阵运算包括加法、减法、乘法和求逆等操作。
其中矩阵乘法的算法是通过将一个矩阵的每一行与另一个矩阵的每一列进行乘法运算,并将结果相加得到新的矩阵。
3. 求导与积分算法:求导是求函数导数的运算,可以使用导数的定义和公式进行计算。
高二年级期中考试数学章节复习要点整理:算法及流程图-精选学习文档
高二年级期中考试数学章节复习要点整理:算法
及流程图
数学是一种工具学科,是学习其他学科的基础。
小编准备了高二年级期中考试数学章节复习要点整理,希望你喜欢。
一、概念
1.算法:算法通常是指可以用计算机来解决的某一类问题的程序或步骤。
算法的程序或步骤应具有明确性、有效性和有限性。
2.流程图:流程图是由一些图框和带箭头的流程线组成的,如图,其中图框表示各种操作的内容,带箭头的流程线表示操作的先后次序。
二、试题解答
1.体会算法的思想,了解算法的含义,能够解决简单的算法步骤
2.算法的描述方式有自然语言、程序框设计语言、伪代码等等,他们之间能够互相转化
3.理解程序框图的顺序结构、条件结构和循环结构这三种基本的逻辑结构,能识别和理解简单的框图的功能,能够运用三种基本逻辑结构设计程序框图来解决简单的问题
三、解答基本算法语句一类的试题注意事项
1.理解赋值语句、输入和输出语句的格式和作用,并能用它
们编写程序
2.通过具体的实例理解并掌握条件语句、循环语句,借助框图中的条件结构和循环结构,用这两种语句设计程序
3.无论用自然语言,还是用框图语言和程序语句表示算法,都是对算法的一种形式化的表示,而算法才是解决问题的关键
高二年级期中考试数学章节复习要点整理就为大家介绍到这里,希望对你有所帮助。
数学的算法
数学的算法1.什么是算法算法是数学中非常重要的概念,也是计算机科学的基础。
在数学中,算法指的是一系列解决问题的方法;而在计算机科学中,算法指的是解决问题的过程,也就是解决特定问题的步骤。
2.算法的种类算法的种类很多,可以分为数值算法、符号算法和逻辑算法三种。
其中,数值算法主要是针对数值计算的问题,如求解数值积分、求解方程等;符号算法主要是针对符号计算的问题,如代数运算、微积分问题中的符号计算等;逻辑算法主要是针对决策和推理问题的解决。
3.算法的设计思路设计一个高效的算法需要有良好的思路和完备的思维。
在算法的设计过程中,一般先确定问题的输入输出,然后分析问题的性质,确定解题的方式和步骤。
同时,需要注意算法的复杂度,也就是算法执行所需的时间和空间复杂度,以此来评估算法的效率。
4.常见的算法在计算机科学领域,有一些非常著名的算法,如排序算法、搜索算法、图论算法等。
排序算法根据具体的排序方法可以分为插入排序、快速排序、选择排序等,通过排序算法可以将数据进行分组、分类,使计算机能够更高效地处理数据。
而搜索算法则是通过特定的搜索过程,寻找问题的解决方案。
图论算法是针对图论问题进行解决的算法,如最短路径算法、最小生成树算法等。
5.算法应用算法在各个领域都有广泛的应用。
在科学研究中,算法常常被用来解决理论和实践上的难题;在工业领域中,算法也可以用来进行数据分析、预测和优化;在金融领域中,算法可以用来进行交易策略的设计、风险管理等。
6.算法的发展趋势随着科学技术的不断进步,算法也在不断地发展和完善。
随着计算机技术的快速发展,现在的算法可以完成更加复杂的任务,也可以在更为庞大的数据上实现高效的计算。
未来,随着人工智能和大数据技术的发展,我们相信算法一定会向更高的方向发展,不断地推动科技的进步。
高一数学人教A版必修3课件:1.1.1 算法的概念 一
必须是明确和有效的,而且能够在有限步内
完成.
例1 下列叙述中,
①植树需要运苗、挖坑、栽苗、浇水这些步骤;
②按顺序进行下列运算:1+1=2,2+1=3,3+ 1=4,„,99+1=100; ③从青岛乘火车到济南,再从济南乘飞机到广 州市观看亚运会开幕式;
④3x>x+1;
⑤求所有能被3整除的正数,即3,6,9,12,„.
把较大数放在前面,依次类推,由大到小排列
这三个数.
变式训练2
写出能找出a、b、c三个数中最小
值的一个算法.
解:第一步:输入a、b、c,并且假定min=a;
第二步:若b<min成立,则用b的值替换min;
否则直接执行下一步;
第三步:若c<min成立,则用c的值替换min, 否则直接执行下一步; 第四步:输出min的值,结束.
【解析】
第一步,若a<b,交换a,b的值后,
则是大数在前,小数在后.
第二步,比较a与c,若a<c,则c在a的前面.
第三步,则c在b的前面.
这样得出的结论是由大到小的顺序.
【答案】
B
【思维总结】
这是一个比较大小的算法,必
须先任意取出两个数进行比较,并把两者中的
较大数找出,然后再将它与第三个数比较,并
第二步,令i=1,S=1.
第三步,判断“i≤n”是否成立,若不是,输出
S,结束算法;若是,执行下一步.
第四步,令S的值乘i,仍用S表示,令i的值增加 1,仍用i表示,返回第三步.
【思维总结】
法一称为累乘法,将步骤一
直写下去,便得到任意有限个数相乘的算法. 法二具有代表性,重复做同一种动作时,可 以用这种算法来解决,能节约大量的程序步 骤.同时它还体现了算法的本质:对一类问 题的机械的、统一的求解方法,其中S称为累 乘变量,i称为计数变量.
高中数学必修三第一章1.1算法与程序边框图
第一章1.1算法与程序边框图1.算法的概念(1)算法概念的理解①算法是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.②算法与一般意义上具体问题的解法既有联系,又有区别,它们之间是一般和特殊的关系,也是抽象与具体的关系.算法的获得要借助一般意义上具体问题的求解方法,而任何一个具体问题都可以利用这类问题的一般算法来解决.③算法一方面具有具体化、程序化、机械化的特点,同时又有高度的抽象性、概括性、精确性,所以算法在解决问题中更具有条理性、逻辑性的特点.(2)算法的四个特征:概括性、逻辑性、有穷性、不唯一性①概括性:写出的算法必须能解决某一类问题,并且能够重复使用.②逻辑性:算法从初始步骤开始,分为若干明确的步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,而且每一步都是正确无误的,从而组成了一个有着很强逻辑性的步骤序列.③有穷性:算法有一个清晰的起始步,终止步是表示问题得到解答或指出问题没有解答,所有序列必须在有限个步骤之内完成,不能无停止地执行下去.④不唯一性:求解某一个问题的算法不一定只有唯一的一个,可以有不同的算法,当然这些算法有简繁之分、优劣之别.(3)常见的算法类型①数值性计算问题.如:解方程(或方程组)、解不等式(或不等式组)、利用公式求值、累加或累乘等问题,可通过相应的数学模型借助一般的数学计算方法,分解成清晰的步骤,使之条理化.②非数值性计算问题.如:判断、排序、变量变换等需先建立过程模型,再通过模型进行算法设计与描述.注意:(ⅰ)注意算法与解法的区别:算法是解决一类问题所需要的程序或步骤的统称;而解法是解决某一个具体问题的过程或步骤,是具体的解题过程.(ⅱ)设计算法时要尽量选取简捷、快速、高效的解决问题的算法.对一个具体的问题,我们要对解决问题的途径进行透彻的研究,找出最优算法,做到“先思考后处理”.2.程序框图(1)程序框图又称为流程图,是一种用程序框、流程线及文字说明来准确、直观地表示算法的图形.(2)用程序框图表示算法,具有直观、形象的特点,能更清楚地展现算法的逻辑结构.(3)程序框图主要由程序框和流程线组成.基本的程序框有终端框、输入框、输出框、处理框、判断框,其中终端框是任何流程图不可缺少的,而输入、输出可以用在算法中任何需要输入、输出的位置.(4)画程序框图的规则①使用标准的框图符号;②框图一般按从上到下、从左到右的方向画;③终端框(起止框)是任何程序框图必不可缺少的,表示程序的开始和结束;④除判断框外,大多数程序框图符号只有一个进入点和一个退出点,判断框是具有超过一个退出点的唯一符号;⑤程序框图符号框内的文字要简洁精炼.注意:(ⅰ)每一种程序框图的图形符号都有特定的含义,在画程序框图时不能混用,并且所用图形符号一定要标准规范,起始框只有一条流出线(没有流入线),终止框只有一条流入线(没有流出线),输入、输出框只有一条流入线和一条流出线,判断框有一条流入线和两条流出线.(ⅱ)如果一个程序框图由于纸面等原因需要分开画,要在断开处画上连接点,并标出连接的号码.(ⅲ)判断框是“是”与“否”两分支的判断,有且仅有两个结果.(ⅳ)一般地,画程序框图时,先用自然语言编写算法,然后再画程序框图.3.算法的三种基本结构(1)顺序结构:顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的基本结构,其基本结构形式如图所示,其中A、B两框所指定的操作是依次执行的.顺序结构中所表达的逻辑关系是自然串行、上下连贯、线性排列的.(2)条件结构:先根据条件作出判断,再决定执行哪一种操作的结构就称为条件结构.条件结构用于进行逻辑判断,并根据判断的结果进行不同的处理.条件结构必含判断框.条件结构的结构形式如图2所示,此结构中包含一个判断框,算法执行到此判断框给定的条件P时,根据条件P是否成立选择不同的执行框(A框或B框).注意:无论P是否成立,下一步只能执行A框或B框之一,不能A框和B框同时执行,也不能A、B两框都不执行,但A框和B框中可以有一个是空的,如图3.(3)循环结构:根据条件是否成立,以决定是否重复执行某些操作,在算法中要求重复执行同一操作的结构称为循环结构,重复执行的处理步骤称为循环体.根据执行情况及循环结束条件的不同可以分为当型循环(WHILE型)和直到型循环(UNTIL型).当型循环的特点是“先判断,后执行”,即先判断条件,当条件满足时,反复执行循环体,当条件不满足时退出循环(也就是说直到条件不满足时退出循环).如图4.直到型循环的特点是先执行一次循环体,再判断条件,当条件不满足时执行循环体,当条件满足时退出循环(即直到条件满足时退出循环),即“先执行,后判断”.如图5.当型循环可能一次也不执行循环体,而直到型循环至少要执行一次循环体.当型循环与直到型循环可以相互转化,条件互补.循环结构中常用的变量有计数变量、累加变量及累乘变量.计数变量用来记录某个事件发生的次数(即执行循环体的次数),累加变量用来计算数据之和,累乘变量用来计算数据之积.对于这些变量,开始一般要先赋初值,一般地,计数变量初值可设为0或1,累加变量初值设为0,累乘变量初值设为1.注意:(ⅰ)正确理解顺序结构的特点及适用条件是作出顺序结构图的关键.(ⅱ)画条件结构的程序框图要用到判断框,判断框有两个出口,根据不同的条件输出不同的信息,这些不同的信息必须全部写出.(ⅲ)只有有规律的,能重复进行的算法过程才能用循环结构.题型一算法设计写出能找出a 、b 、c 三个数中最小值的一个算法.解 第一步:输入a 、b 、c .并且假定min =a ;第二步:若b <min 成立,则用b 的值替换min ;否则直接执行下一步;第三步:若c <min 成立,则用c 的值替换min ,否则直接执行下一步;第四步:输出min 的值,结束.点评 本题的思路是:将min 定义为最小值,并把a 的值赋给min ,然后依次与b 、c 比较大小,遇到小的就替换min 的值,最后输出min 的值,这种方法可以推广到从多个不同的数中找出最大或最小的一个.题型二 条件结构的程序框图已知函数y =⎩⎪⎨⎪⎧ -1 (x >0),0 (x =0),1 (x <0).写出求该函数值的算法及程序框图.解 算法如下:第一步:输入x ;第二步:如果x >0,那么使y =-1,如果x =0,那么使y =0,如果x <0,那么使y =1; 第三步:输出函数值y .程序框图如图所示.点评 该函数是分段函数,当x 取不同范围内的值时,函数的表达式不同,因此当给出一个自变量x 的值时,也必须先判断x 的范围,然后确定利用哪一段的表达式求函数值,因为函数分了三段,所以判断框需要两个,即进行两次判断.求分段函数的函数值的程序框图,如果是分两段的函数只需引入一个判断框,如果是分三段的函数,至少需要引入两个判断框,分四段的函数要引入三个判断框,以此类推,至于判断框内的内容是没有顺序的,比如:本题中的两个判断框内的内容可以交换,但对应的下一图框中的内容或操作也必须相应地进行变化,比如本题的程序框图也可以画成如图1所示或如图2所示.图1图2题型三循环结构的程序框图看下面的问题:1+2+3+…+()>10 000,这个问题的答案不唯一,我们只要确定出满足条件的最小正整数n0,括号内填写的数只要大于或等于n0即可.试写出满足条件的最小正整数n0的算法并画出相应的程序框图.解算法如下:第一步:p=0;第二步:i=0;第三步:i=i+1;第四步:p=p+i;第五步:如果p>10 000,则输出i,算法结束.否则,执行第六步;第六步:回到第三步,重新执行第三步、第四步和第五步.该算法的程序框图如图所示.点评本题属于累加问题,代表了一类相邻两数的差为常数的求和问题的解法,需引入计数变量和累加变量,应用循环结构解决问题.在设计算法时前后两个加数相差1,则i=i +1,若相差2,则i=i+2,要灵活改变算法中的相应部分.另外需注意判断框内的条件的正确写出,直到型和当型循环条件不同,本题解法用的是直到型循环,用当型循环结构时判断框内条件应为p≤10 000.如图所示.题型四程序框图在生活中的应用72,91,58,63,84,88,90,55,61,73,64,77,82,94,60.要求将80分以上的同学的平均分求出来.画出程序框图.解用条件分支结构来判断成绩是否高于80分,用循环结构控制输入的次数,同时引进两个累加变量,分别计算高于80分的成绩的总和和人数.程序框图如图所示.构和循环结构相结合的算法.【例1】如图所示是某一算法的程序框图,根据该框图指出这一算法的功能.错解 求S =12+14+16+…+110的值. 错解辨析 本题忽略了计数变量与循环次数,没有明确循环体在循环结构中的作用,以及循环终止条件决定是否继续执行循环体.正解 在该程序框图中,S 与n 为两个累加变量,k 为计数变量,所以该算法的功能是求12+14+16+…+120的值. 【例2】 试设计一个求1×2×3×4×…×n 的值的程序框图.错解 程序框图如图所示.错解辨析 本题程序框图看似当型循环结构,我们应当注意的是,当型循环结构是当条件满足时执行循环体,而本题显然是误解了当型循环结构条件.正解 程序框图如图所示.乘变量t和计数变量i,这里t与i每一次循环,它们的值都在改变.1.(海南、宁夏高考)如果执行下面的程序框图,那么输出的S为()A.2 450 B.2 500 C.2 550 D.2 652答案 C解析当k=1,S=0+2×1;当k=2,S=0+2×1+2×2;当k=3,S=0+2×1+2×2+2×3;…当k=50,S=0+2×1+2×2+2×3+…+2×50=2 550.2.(济宁模拟)在如图的程序框图中,输出结果是()A.5 B.6C.13 D.10答案 D解析a=5时,S=1+5=6;a=4时,S=6+4=10;a=3时,终止循环,输出S=10.3.(广东高考)阅读下图的程序框图.若输入m=4,n=6,则输出a=________,i=________.答案12 3解析输入m=4,n=6,则i=1时,a=m×i=4,n不能整除4;i=2时,a=m×i=8,n不能整除8;i=3时,a=m×i=12,6能整除12.∴a=12,i=3.一、选择题1.一个完整的程序框图至少包含()A.终端框和输入、输出框B.终端框和处理框C.终端框和判断框D.终端框、处理框和输入、输出框答案 A解析一个完整的程序框图至少需包括终端框和输入、输出框.2.下列关于条件结构的说法中正确的是()A.条件结构的程序框图有一个入口和两个出口B.无论条件结构中的条件是否满足,都只能执行两条路径之一C .条件结构中的两条路径可以同时执行D .对于一个算法来说,判断框中的条件是惟一的答案 B解析 由条件结构可知:根据所给条件是否成立,只能执行两条途径之一.3.下列问题的算法适宜用条件结构表示的是( )A .求点P (-1,3)到直线l :3x -2y +1=0的距离B .由直角三角形的两条直角边求斜边C .解不等式ax +b >0 (a ≠0)D .计算100个数的平均数答案 C解析 条件结构是处理逻辑判断并根据判断进行不同处理的结构.只有C 中含有判断a 的符号,其余选项都不含逻辑判断.4.下列程序框图表示的算法是( )A .输出c ,b ,aB .输出最大值C .输出最小值D .比较a ,b ,c 的大小答案 B解析 根据流程图可知,此图应表示求三个数中的最大数.5.用二分法求方程的近似根,精确度为δ,用直到型循环结构的终止条件是( )A .|x 1-x 2|>δB .|x 1-x 2|<δC .x 1<δ<x 2D .x 1=x 2=δ答案 B解析 直到型循环结构是先执行、再判断、再循环,是当条件满足时循环停止,因此用二分法求方程近似根时,用直到型循环结构的终止条件为|x 1-x 2|<δ.二、填空题6.下边的程序框图(如下图所示),能判断任意输入的整数x 是奇数或是偶数.其中判断框内的条件是________.答案 m =0?解析 根据程序框图中的处理框和输出的结果,寻找判断框内的条件.由于当判断框是正确时输出的是“x 是偶数”,而判断框前面的处理框是x 除以2的余数,因此判断框应填“m =0?”.7.下图是计算1+13+15+…+199的程序框图,判断框应填的内容是________,处理框应填的内容是________.答案 i ≤99? i =i +2解析 由题意知,该算法从i =1开始到99结束,循环变量依次加2.8.完成下面求1+2+3+…+10的值的算法:第一步,S =1.第二步,i =2.第三步,S =S +i .第四步,i =i +1.第五步,________________________________________________________________________. 第六步,输出S .答案 如果i =11,执行第六步;否则执行第三步解析 本题是用自然语言来描述的算法,实际上第五步是一个判断条件,根据题意,是循环是否终止的条件,因此应该为如果i =11,执行第六步;否则执行第三步.三、解答题9.画出求11×2+12×3+13×4+…+199×100的值的程序框图. 解 这是一个累加求和问题,共99项相加,可设计一个计数变量,一个累加变量,用循环结构实现这一算法.程序框图如下图所示:10.写出解方程ax +b =0 (a 、b 为常数)的算法,并画出程序框图.解 算法如下:第一步,判断a 是否等于零,若a ≠0,执行第二步,若a =0,执行第三步;第二步,计算-b a ,输出“方程的解为-b a”; 第三步,判断b 是否等于零,若b =0,输出“有无数个解”的信息,若b ≠0,输出“方程无解”的信息.程序框图如图所示:探 究 驿 站11.画出求12+12+…+12(共6个2)的值的程序框图. 分析 本题看上去非常烦琐,尤其是对于2的位置处理,容易让人产生错觉.本题只要把含有2的式子分离开来,用A 代替12,即令A =12,则不难分析出分母可化为12+A的形式,且此结构重复出现.解 方法一 当型循环结构程序框图如图所示.方法二 直到型循环结构程序框图如图所示.12.给出以下10个数:5,9,80,43,95,73,28,17,60,36,要求把大于40的数找出来并输出.试画出该问题的程序框图.解程序框图如下图:趣味一题13.相传,古印度的舍罕王打算重赏国际象棋的发明者——宰相西萨·班·达依尔.于是,这位宰相跪在国王面前说:“陛下,请您在这张棋盘的第一个小格内,赏给我一粒麦子;在第二个小格内给两粒,第三格内给四粒,照这样下去,每一小格都比前一小格加一倍.陛下啊,把这样摆满棋盘上所有64格的麦粒,都赏给您的仆人罢!”国王慷慨地答应了宰相的要求,他下令将一袋麦子拿到宝座前.计数麦粒的工作开始了.第一格内放一粒,第二格两粒,第三格四粒……还没到第二十格,袋子已经空了.一袋又一袋的麦子被扛到国王面前来,但是,麦粒数一格接一格地增长得那么迅速,很快就可以看出,即使拿来全印度的小麦,国王也无法兑现他对宰相许下的诺言!请你画出一个程序框图来求需要的麦粒数.分析由题意,我们可以看出第一格内放一粒,第二格两粒,第三格四粒,就是往后每一格是前一格的2倍,这样一共需要的麦粒数就是1+2+22+…+262+263.从而可以得出这是一个累加求和问题,可以利用循环结构来设计算法,计数变量i从1到64循环64次,每个求和的数可用一个累乘变量表示.解程序框图:。
