1.1.1 算法的概念
学习目标导航
1.通过回顾解二元一次方程组的方法,了解算法的思想.(重点)
2.了解算法的含义和特征.(重点)
3.算法特征的使用,及算法的设计.(难点)
[基础·初探]
教材整理1 算法的概念
算法的 概念 | |
描述算法的方式 | 可以用 和 加以叙述,也可以借助形式语言(算法语言)给出精确的说明,也可以用 直观地显示算法的全貌 |
随手练
判断(正确的打“√”,错误的打“×”)
(1)一个算法可解决某一类问题.( )
(2)算法的步骤是有限的,有些步骤可有可无.( )
(3)同一个问题可以有不同的算法.( )
教材整理2 算法的要求
阅读教材,完成下列问题.
1.写出的算法,必须能 并且能 .
2.算法过程要能 ,每一步执行的操作,必须 ,不能含混不清,而且经过 能得出结果.
随手练
下列可以看成算法的是( )
A.学习数学时,课前预习,课上认真听讲并记好笔记,课下先复习再做作业,之后做适当的练习题
B.今天餐厅的饭真好吃
C.这道数学题很难做
D.方程2x2-x+1=0无实数根
学习探型
类型1 | 算法的概念 |
青岛什么好吃 |
例1 (1)下列描述不能看作算法的是( )
A.解一元一次方程的步骤是去分母,去括号,移项,合并同类项,系数化为1
B.洗衣机的使用说明书
C.解方程2x2+x-1=0
D.利用公式S=πr2计算半径为4的圆的面积,就是计算π×42
(2)下列关于算法的说法:
①求解某一类问题的算法是唯一的;
②算法的每一步操作必须是明确的,不能有歧义或模糊;
③算法执行后一定产生明确的结果.
其中正确的个数有( )
A.1个 B.2个
C.3个 D.0个
名师指津
1.算法实际上是解决问题的一种程序性方法,它通常解决某一个或一类问题,在用算法解决问题时,显然体现了特殊与一般的数学思想.
2.算法的特点有:①有限性,②确定性,③顺序性和正确性,④不唯一性,⑤普遍性.解答有关算法的概念判断题应根据算法的这五大特点进行判断.
[再练一题]
1.下列叙述中,
①植树需要运苗、挖坑、栽苗、浇水这些步骤;
②按顺序进行下列运算:1+1=2,2+1=3,3+1=4,…,99+1=100;
③从青岛乘动车到济南,再从济南乘飞机到南京观看全运会;
④3x>x+1;
⑤求所有能被3整除的正数,即3,6,9,12,….
能称为算法的有________.(填序号)
类型2 | 算法的设计 |
例2 (1)设计一个算法,判断7是否为质数;
(2)设计一个算法,判断35是否为质数.
名师指津
设计一个具体问题的算法,通常按以下步骤:
1.认真分析问题,出解决此题的一般数学方法;
2.借助有关变量或参数对算法加以表述;
3.将解决问题的过程划分为若干步骤;
4.用简练的语言将这个步骤表示出 .
[再练一题]
2.两个大人和两个小孩一起渡河,渡口只有一条小船,每次只能渡一个大人或两个小孩,他们四人都会划船,但都不会游泳.同学们现在想一想,他们怎样渡过河去?请写一写你的渡河方案.
类型3 | 算法的应用 |
例3 设计算法,给定任一x的值,求y的值,其中y=
名师指津
分段函数求函数值的算法要运用分类讨论思想进行设计,一定要对算法中可能遇到的情况考虑周全,满足与不满足都要有相应的步骤.
[再练一题]
3.已知y=写出给定变量x的值,求函数值y的算法.
[探究共研型]
探究点 | 算法的概念与特征 |
探究1 是不是任何一个算法都有明确的结果?
探究2 算法的书写步数等同于算法的执行步数吗?
探究3 书写算法时,能使用“……”、“同理”、“类似地”等词语吗?
探究4 一个具体问题的算法唯一吗?
探究5 描述算法的方式唯一吗?
探究6 写算法应该注意什么?
写算法应注意以下几点:
1.写出的算法,必须能解决一类问题(如:判断一个整数n(n>1)是否为质数;求任意一个方程的近似解;…),并且能够重复使用.
2.要使算法尽量简单、步骤尽量少.
3.要保证算法正确,且计算机能够执行,如:让计算机计算1×2×3×4×5是可以做到的.
再如:用自然语言描述求y=-x2-2x+3的最大值的算法.
一般同学们会这样写:S1 配方得y=-(x+1)2+4.
S2 函数的最大值为4.
实际上,作为一个具体问题 说,上述解法没有什么错误,但是我们要描述的是求这一类问题的算法,它可以用 解决这个问题,也可以用 求这一类问题,则上述解法就欠妥了.应就y
=ax2+bx+c作一般讨论.
本题算法应该这样写:
S1 给a,b,c赋值.
S2 判断a≥0是否成立,若成立,则输出“函数无最大值”,结束算法;否则执行S3.
S3 计算,并将结果赋给max.
S4 输出max,结束算法.(算法执行过程中,依次给a,b,c取值-1、-2、3)
例4 已知一个等边三角形的周长为a,求这个三角形的面积,设计一个算法解决这个问题.
名师指津
1.写一个算法应遵循由粗到细的处理问题的方法,先确定大的框架,再根据情况具体化,这是设计算法时普遍采用的方法.
2.给出一个问题,设计算法时要注意:
(1)认真分析问题,联系解决此问题的一般数学方法;
(2)综合考虑此类问题中可能涉及的各种情况;
(3)将解决问题的过程划分为若干个步骤.
[再练一题]
4.下面给出了一个问题的算法:
S1,输入x.
S2,若x≥4,则执行S3,否则执行S4.
S3,输出2x-1.
S4,输出x2-2x+3.
这个算法解决的问题是什么?
当堂检测
1.算法的每一步都应该是确定的、能有效执行的,并且得到确定的结果,这里指算法的( )
A.有穷性 B.确定性
C.逻辑性 D.不唯一性
发布评论