2.1算法的基本思想教学设计 教案 (北师大必修3)

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第二章 算法初步

第一课时 2.1算法的基本思想

【课程标准】通过对解决具体问题过程与步骤的分析(如二元一次方程组求解等问题),体会算法的思想,了解算法的含义.

【教学目标】1.理解算法的概念与特点;

2.学会用自然语言描述算法,体会算法思想;

3.培养学生逻辑思维能力与表达能力.

【教学重点】算法概念以及用自然语言描述算法

【教学难点】用自然语言描述算法

【教学过程】

一、序言

算法不仅是数学及其应用的重要组成部分,也是计算机科学的重要基础. 在现代社会里,计算机已经成为人们日常生活和工作不可缺少的工具. 听音乐、看电影、玩游戏、打字、画卡通画、处理数据,计算机几乎渗透到了人们生活的所有领域. 那么,计算机是怎样工作的呢?要想弄清楚这个问题,算法的学习是一个开始. 同时,算法有利于发展有条理的思考与表达的能力,提高逻辑思维能力.

在以前的学习中,虽然没有出现算法这个名词,但实际上在数学学习中已经渗透了大量的算法思想,如四则运算的过程、求解方程的步骤等等,完成这些工作都需要一系列程序化的步骤,这就是算法的思想.

二、实例分析

例1:写出你在家里烧开水过程的一个算法.

解:第一步:把水注入电锅;

第二步:打开电源把水烧开;

第三步:把烧开的水注入热水瓶.

(以上算法是解决某一问题的程序或步骤)

例2:给出求1+2+3+4+5的一个算法.

解: 算法1 按照逐一相加的程序进行.

第一步:计算1+2,得到3;

第二步:将第一步中的运算结果3与3相加,得到6;

第三步:将第二步中的运算结果6与4相加,得到10;

第四步:将第三步中的运算结果10与5相加,得到15.

算法2 运用公式123n +++

+=2)1(+n n 直接计算. 第一步:取n =5; 第二步:计算2

)1(+n n ; 第三步:输出运算结果.

算法3 用循环方法求和.

第一步:使1S =,;

第二步:使2I =;

第三步:使S S I =+;

第四步:使1I I =+;

第五步:如果5I ≤,则返回第三步,否则输出S .

点评:一个问题的算法可能不唯一.

例3 给出求解方程组274511

x y x y +=⎧⎨+=⎩的一个算法.

解:用消元法解这个方程组,步骤是: 第一步:方程①不动,将方程②中x 的系数除以方程①中x 的系数,得到乘数422m =

=; 第二步:方程②减去m 乘以方程①,消去方程②中的x 项,得到

2733

x y y +=⎧⎨=-⎩; 第三步:将上面的方程组自下而上回代求解,得到1y =-,4x =.

所以原方程组的解为41x y =⎧⎨

=-⎩. 点评:通过例1再次明确算法特点:有限性和确定性

例4.用二分法设计一个求解方程x 2–2=0的近似根的算法。并假设所求近似根与准确解的差的绝对值不超过0.005,

解:则不难设计出以下步骤:

第一步:令f(x)=x 2–2。因为f(1)<0,f(2)>0,所以设x 1=1,x 2=2。

第二步:令m=(x 1+x 2)/2,判断f(m)是否为0,若则,则m 为所长;若否,则继续判断f(x 1)·f(m)大于0还是小于0。

第三步:若f(x 1)·f(m)>0,则令x 1=m ;否则,令x 2=m 。

第四步:判断|x 1–x 2|<0.005是否成立?若是,则x 1、x 2之间的任意取值均为满足条件的近似根;若否,则返回第二

点评:渗透循环的思想,为后面教学做铺垫。

例5. 写出求方程组()012212221

11≠-⎩⎨⎧=+=+b a b a ②c y b x a ①c y b x a 的解的算法.

解:第一步:②× a1 - ①×a2,得:()12211221c a c a y b a b a -=- ③

第二步:解③得 1

2211221b a b a c a c a y --=; 第三步:将12211221b a b a c a c a y --=代入①,得111

c b y x a -= 点评:可推广到解一般的二元一次方程组,说明算法的普遍性:很多具体的问题,都可以设计合理的算法去解决,如心算、计算器计算都要经过有限、事先设计好的步骤加以解决.

例6:用“待定系数法”求圆的方程的大致步骤是:

第一步:根据题意,选择标准方程或一般方程;

第二步:根据条件列出关于a ,b ,r 或D ,E ,F 的方程组;

第三步:解出a ,b ,r 或D ,E ,F ,代入标准方程或一般方程.

三、算法的概念

通过对以上几个问题的分析,我们对算法有了一个初步的了解.在解决某些问题时,需要设计出一系列可操作或可计算的步骤,通过实施这些步骤来解决问题,通常把这些步骤称为解决这些问题的算法

在数学中,现代意义上的“算法”通常是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.

四、课堂练习

1:任意给定一个大于1的正整数n ,设计一个算法求出n 的所有因数.

解:根据因数的定义,可设计出下面的一个算法:

第一步:输入大于1的正整数n .

第二步:判断n 是否等于2,若2=n ,则n 的因数为1,n ;若2>n ,则执行第三步.

第三步:依次从2到1-n 检验是不是整除n ,若整除n ,则是n 的因数;若不整除n ,则不是n 的因数.

2:设计一个计算1+2+…+100的值的算法.

解:算法1 按照逐一相加的程序进行

第一步:计算1+2,得到3;

第二步:将第一步中的运算结果3与3相加,得到6;

第三步:将第二步中的运算结果6与4相加,得到10;

……

第九十九步:将第九十八步中的运算结果4950与100相加,得到5050. 算法2 可以运用公式1+2+3+…+n =

2)1(+n n 直接计算 第一步:取n =100; 第二步:计算

2

)1(+n n ; 第三步:输出运算结果.

3:任意给定一个正实数,设计一个算法求以这个数为半径的圆的面积.

解:第一步:输入任意正实数r ;

第二步:计算2r S π=;

第三步:输出圆的面积S .

4. 二分法求解多项式方程在区间[,]a b 的一种常用方法.算法步骤是。

解1.确定区间[,]a b ,验证()()0f a f b <,给定精度ε;

2. 求区间(,)a b 的中点1x ;

3. 计算1()f x : 若1()0f x =,则1x 就是函数的零点; 若1()()0f a f x <,则令1b x =

相关文档
最新文档