资源描述
算法的概念算法的概念算法的概念算法是计算机工作的算法是计算机工作的基础,算法的发展推基础,算法的发展推动了计算机的发展动了计算机的发展算法的概念【学习目标】【学习目标】 1.了解算法的含义,体会算法的思想了解算法的含义,体会算法的思想; 2.能够用自然语言叙述算法;能够用自然语言叙述算法; 3.掌握正确的算法应满足的特征掌握正确的算法应满足的特征。【学习重点】【学习重点】 算法的含义、解二元一次方程组和判断一算法的含义、解二元一次方程组和判断一 个数为质数的算法设计;个数为质数的算法设计;【学习难点】【学习难点】把自然语言转化为算法语言。把自然语言转化为算法语言。算法的概念创设情境创设情境 给出定义给出定义问题问题1 1:有一个农夫带一条:有一个农夫带一条狼狼、一只、一只羊羊和一筐和一筐白菜白菜过河。如果没有农夫看管,过河。如果没有农夫看管,则狼要吃羊,羊要吃白菜。但是船很小,则狼要吃羊,羊要吃白菜。但是船很小,只够农夫带一样东西过河。问农夫该如只够农夫带一样东西过河。问农夫该如何解此难题?何解此难题? 解决步骤:解决步骤:1、带羊到对岸,返回;、带羊到对岸,返回;2、带菜到对岸,并把羊带回;、带菜到对岸,并把羊带回;3、带狼到对岸,返回;、带狼到对岸,返回;4、带羊到对岸。、带羊到对岸。算法的概念我有2条腿一个脑袋我有4条腿一个脑袋问题问题2:“一群小兔一群小鸡,两群一群小兔一群小鸡,两群合合 到一群中,腿一共有到一群中,腿一共有48条,脑条,脑 袋共有袋共有17个,问一共有多少小个,问一共有多少小 鸡?多少小兔?鸡?多少小兔?算法的概念解决步骤解决步骤:1.设未知数:设未知数:设有设有x只小鸡,只小鸡,y只小兔只小兔 X+Y=172.列方程组;列方程组;2X+4Y=483.解方程组;解方程组; X=10 y=74.得到实际问题的答案。得到实际问题的答案。小鸡小鸡10只,小兔只,小兔7只只算法的概念你能写出求解这个方程组的你能写出求解这个方程组的步骤步骤吗?吗? 2X+4Y=48 (1) X+Y=17 (2)什么是算法?什么是算法?探究探究1:写出求解下列方程组的:写出求解下列方程组的步骤步骤。 1111 22 1222(1)0(2)a xb ycaba ba xb yc算法的概念算法的含义(广义)完成某项工作的方法和步骤(广义)完成某项工作的方法和步骤(现代)可以用计算机来解决的一类问题的程序和 步骤.(数学中)算法通常是指按照一定规则解决 某一类问题的明确和有限的步骤. 菜谱是做菜的算法;菜谱是做菜的算法; 歌谱是一首歌曲的算法;歌谱是一首歌曲的算法; 空调说明书是空调使用的算法等空调说明书是空调使用的算法等算法的概念知识探究知识探究 归纳特征归纳特征例例1:设计一个算法,判断:设计一个算法,判断7是否为质数。是否为质数。算法的概念例例1:设计一个算法,判断:设计一个算法,判断7是否为质数。是否为质数。算法:第一步,用第一步,用2除除7,得到余数,得到余数1。因为余数不为。因为余数不为0,所以,所以2不能整除不能整除7。第二步,用第二步,用3除除7,得到余数,得到余数1。因为余数不为。因为余数不为0,所以,所以3不能整除不能整除7。第三步,用第三步,用4除除7,得到余数,得到余数3。因为余数不为。因为余数不为0,所以,所以4不能整除不能整除7。第四步,用第四步,用5除除7,得到余数,得到余数2。因为余数不为。因为余数不为0,所以,所以5不能整除不能整除7。第五步,用第五步,用6除除7,得到余数,得到余数1。因为余数不为。因为余数不为0,所以,所以6不能整除不能整除7。因此,。因此,7是质数。是质数。35?算法的概念判断判断53是否为质数。是否为质数。第一步,用第一步,用2除除53,得到余数,得到余数1。因为余数不为。因为余数不为0,所以,所以2不能整除不能整除53。第二步,用第二步,用3除除53,得到余数,得到余数2。因为余数不为。因为余数不为0,所以,所以3不能整除不能整除53。第三步,用第三步,用4除除53,得到余数,得到余数1。因为余数不为。因为余数不为0,所以,所以4不能整除不能整除53。第五十一步,用第五十一步,用52除除53,得到余数,得到余数1。因为余数不为。因为余数不为0,所以所以52不能整除不能整除53。因此,。因此,53是质数。是质数。不是算法不是算法以下是算法吗?以下是算法吗?算法的概念合作探究合作探究2: 任意给定一个大于任意给定一个大于2的整数的整数n,能否设,能否设计一个算法对计一个算法对n是否为质数做出判断?是否为质数做出判断?技巧:技巧:初值初值 赋值赋值 计数计数算法的概念第三步:用第三步:用i除除n,得到余数是,得到余数是r;第四步:判断第四步:判断r是否为是否为0,若是,则,若是,则n不是质数;不是质数; 否则,否则,将将i的值增加的值增加1,仍用,仍用i表示表示; 第五步:判断第五步:判断i(n-1)是否成立。若是,则是否成立。若是,则n是质是质数,结束算法;否则,返回第三步。数,结束算法;否则,返回第三步。算法的概念例例3:用二分法设计一个求方程用二分法设计一个求方程(x0)的近似根的算法)的近似根的算法.220 x 算法的概念第一步,令第一步,令 ,给定精确度,给定精确度d.2)(2xxf第三步:取区间中点第三步:取区间中点 .第五步:判断第五步:判断 的长度是否小于的长度是否小于d或或f(m)是是否等于否等于0.若是,则若是,则m是方程的近似解;否则,返回是方程的近似解;否则,返回第三步第三步.第二步,确定区间第二步,确定区间 ,满足,满足,ab( )( )0f af b 22f xx2abm第四步,若第四步,若 ,则含零点的区间为,则含零点的区间为 ;否则,含零点的区间为否则,含零点的区间为 .将新得到的含零点的将新得到的含零点的区间仍记为区间仍记为 .( )( )0f af m,am,mb,ab,ab算法的概念思考:思考:问题问题1:你能举出更多算法的例子吗?:你能举出更多算法的例子吗?问题问题2:与一般解决问题的过程相比,:与一般解决问题的过程相比, 你认为算法有哪些特征?你认为算法有哪些特征?算法的概念算法的基本特征算法的基本特征明确性:明确性:算法的每一个步骤都是确切的,能算法的每一个步骤都是确切的,能有效执行且得到确定的结果,不能模棱两可。有效执行且得到确定的结果,不能模棱两可。顺序性:顺序性:算法从初始步骤开始,分为若干算法从初始步骤开始,分为若干明确的步骤,每一步都只能有一个确定的继明确的步骤,每一步都只能有一个确定的继续,只有执行完前一步才能进入到后一步,续,只有执行完前一步才能进入到后一步,并且每一步都确定无误后,才能解决问题。并且每一步都确定无误后,才能解决问题。有限性:有限性:算法应在有限步内结束,并给出算法应在有限步内结束,并给出计算结果。计算结果。算法的概念不唯一性:不唯一性:求解某一个问题的算法不一定求解某一个问题的算法不一定是唯一的,对于同一个问题可以有不同的算是唯一的,对于同一个问题可以有不同的算法。法。 普遍性:普遍性:很多具体的问题,都可以设计很多具体的问题,都可以设计合理的算法去解决某一类问题,如计算器计合理的算法去解决某一类问题,如计算器计算都要经过有限的、事先设计好的步骤加以算都要经过有限的、事先设计好的步骤加以解决。解决。算法的概念当堂检测当堂检测 巩固知识巩固知识1.下面对算法描述正确的一项是:下面对算法描述正确的一项是: A求解某一类问题的算法是唯一的求解某一类问题的算法是唯一的 B一个算法可以无止境地运算下去一个算法可以无止境地运算下去C同一问题可以有不同的算法同一问题可以有不同的算法 D同一问题的算法不同,结果必然不同同一问题的算法不同,结果必然不同2.下列特征中:下列特征中:无序性;无序性;有穷性;有穷性;确定性;确定性;有效性。能表有效性。能表示算法特征的有:示算法特征的有:A.1个个 B.2个个 C.3个个 D.4个个3.已知一个学生的语文、数学、英语成绩分别为已知一个学生的语文、数学、英语成绩分别为89,96,99,求,求他的平均分的一个算法为:他的平均分的一个算法为:第一步:取第一步:取A=89,B=96,C=99;第二步:第二步: ;第三步:第三步: ;第四步:输出计算的结果。第四步:输出计算的结果。算法的概念4.一位商人有一位商人有9枚银元,其中有枚银元,其中有1枚略轻的是假银枚略轻的是假银 元。你能设计用天平(不用砝码)将假银元找元。你能设计用天平(不用砝码)将假银元找 出来的算法吗?出来的算法吗?5.任意给定一个大于任意给定一个大于1的正整数的正整数n,设计一个算法,设计一个算法 求出求出n的所有因数的所有因数.6.两个大人和两个小孩一起渡河,渡口只有一条两个大人和两个小孩一起渡河,渡口只有一条 小船,每次只能渡小船,每次只能渡1 个大人或两个小孩,他们个大人或两个小孩,他们 四人都会划船,但都不会游泳。试问他们怎样四人都会划船,但都不会游泳。试问他们怎样 渡过河去?请写出一个渡河方案。渡过河去?请写出一个渡河方案。算法的概念算法的概念算法的概念算法的概念算法的概念算法的概念今天你有什么收获?今天你有什么收获? 1、算法的概念、算法的概念2、算法的特点及表示、算法的特点及表示3、简单简单算法的设计算法的设计
展开阅读全文