111 算法的概念Word文档格式.docx
- 文档编号:22227458
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:6
- 大小:21.74KB
111 算法的概念Word文档格式.docx
《111 算法的概念Word文档格式.docx》由会员分享,可在线阅读,更多相关《111 算法的概念Word文档格式.docx(6页珍藏版)》请在冰豆网上搜索。
通过本节的学习,使我们对计算机的算法语言有一个基本的了解,明确算法的要求,认识到计算机是人类征服自然的有力工具,进一步提高探索、认识世界的能力。
二、重点与难点:
重点:
算法的含义、解二元一次方程组和判断一个数为质数的算法设计。
难点:
把自然语言转化为算法语言。
三、教学过程【情境引导】一个大人和两个小孩一起渡河,渡口只有一条小船,每次只能渡1个大人或两个小孩,他们三人都会划船,但都不会游泳。
试问他们怎样渡过河去?
请写出一个渡河方案。
第一步,两个小孩同船过河去;
第二步,一个小孩划船回来;
第三步,一个大人划船过河去;
第四步,对岸的小孩划船回来;
第五步,两个小孩同船渡过河去。
【组内合作】思考1:
在初中,对于解二元一次方程组你学过哪些方法?
(加减消元法和代入消元法)x本步骤是什么?
思考2:
用加减消元法解二元一次方程组2121yxy==+的具体步骤是什么?
思考3:
参照上述思路,一般地,解方程组()()()11111ab22ab222102axby++caxbyc==的基【班内交流】根据上述分析,用加减消元法解二元一次方程组,可以分为五个步骤进行,这五个步骤就构成了解二元一次方程组的一个算法。
我们再根据这一算法编制计算机程序,就可以让计算机来解二元一次方程组。
在数学中,按照一定规则解决某一类问题的明确和有限的步骤称为算法。
算法的步骤设计思考1:
如果让计算机判断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.因此,7是质数.思考2:
如果让计算机判断35是否为质数,如何设计算法步骤?
第一步,用2除35,得到余数1,所以2不能整除35.第二步,用3除35,得到余数2,所以3不能整除35.第三步,用4除35,得到余数3,所以4不能整除35.第四步,用5除35,得到余数0,所以5能整除35.因此,35不是质数.思考3:
整数89是否为质数?
如果让计算机判断89是否为质数,按照上述算法需要设计多少个步骤?
第一步,用2除89,得到余数1,所以2不能整除89.第二步,用3除89,得到余数2,所以3不能整除89.第三步,用4除89,得到余数1,所以4不能整除89.第八十七步,用88除89,得到余数1,所以88不能整除89.因此,89是质数.思考4:
用2~88逐一去除89求余数,需要87个步骤,这些步骤基本是重复操作,我们可以按下面的思路改进这个算法,减少算法的步骤.算法分析:
(1)用i表示2~88中的任意一个整数,并从2开始取数;
(2)用i除89,得到余数r.若r=0,则89不是质数;
若r0,将i用i+1替代,再执行同样的操作;
(3)这个操作一直进行到i取88为止.【解难释疑】例:
用二分法设计一个求方程x算法分析:
回顾二分法解方程的过程,并假设所求近似根与准确解的差的绝对值不超过0.005,则不难设计出以下步骤:
第一步:
令f(x)=x22=0的近似根的算法。
22.因为f
(1)0,f
(2)0,所以设x1=1,x2=2.第二步:
令m=(x1+x2)/2,判断f(m)是否为0,若是,则m为所求;
若否,则继续判断f(x1)f(m)大于0还是小于0.第三步:
若f(x1)f(m)0,则令x1=m;
否则,令x2=m.第四步:
判断|x1x2|0.005是否成立?
若是,则x1、x2之间的任意取值均为满足条件的近似根;
若否,则返回第二步.小结:
算法是建立在解法基础上的操作过程,算法不一定要有运算结果,问题答案可以由计算机解决.设计一个解决某类问题的算法的核心内容是设计算法的步骤,它没有一个固定的模式,但有几个基本要求。
小结:
算法具有以下特性:
(1)有穷性;
(2)确定性;
(3)顺序性;
(4)不惟一性;
(5)普遍性【随堂练习】思考1:
有人对哥德巴赫猜想任何大于4的偶数都能写成两个质数之和设计了如下操作步骤:
第一步,检验6=3+3,第二步,检验8=3+5,第三步,检验10=5+5,利用计算机无穷地进行下去!
请问:
这是一个算法吗?
思考2:
一个人带三只狼和三只羚羊过河,只有一条船,同船可以容纳一个人和两只动物。
没有人在的时候,如果狼的数量不少于羚羊的数量,狼就会吃掉羚羊。
设计过河的算法;
解:
算法或步骤如下:
S1人带两只狼过河S2人自己返回S3人带一只羚羊过河S4人带两只狼返回S5人带两只羚羊过河S6人自己返回S7人带两只狼过河S8人自己返回带一只狼过河【归纳总结】本节课主要讲了算法的概念,算法就是解决问题的步骤,平时列论我们做什么事都离不开算法,算法的描述可以用自然语言,也可以用数学语言。
作业布置:
P20习题1.1A组1,2.教学反思:
(待定)1.1.2程序框图与算法的基本逻辑结构主备人:
高一数学备课组第1课时教学要求:
知识与技能:
掌握程序框图的概念;
会用通用的图形符号表示算法,掌握算法的三个基本逻辑结构.掌握画程序框图的基本规则,能正确画出程序框图.过程与方法:
通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程;
学会灵活、正确地画程序框图.情感态度与价值观:
通过本节的学习,使我们对程序框图有一个基本的理解;
掌握算法语言的三种基本逻辑结构,明确程序框图的基本要求;
认识到学习程序框图是我们学习计算机的一个基本步骤,也是我们学习计算机语言的必经之路。
教学重点:
程序框图的基本概念、基本图形符号和3种基本逻辑结构.教学难点:
综合运用框图知识正确地画出程序框图教学过程:
【情境引导】1.写出算法:
给定一个正整数n,判定n是否偶数.2.用二分法设计一个求方程20x=的近似根的算法.3【组内合作】教学程序框图的认识:
①讨论:
如何形象直观的表示算法?
图形方法.教师给出一个流程图(上面1题),学生说说理解的算法步骤.②定义程序框图:
程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.【班内交流】1.基本的程序框和它们各自表示的功能:
程序框名称终端框(起止框)功能表示一个算法的起始和结束输入、输出框表示一个算法输入和输出的信息处理(执行)框赋值、计算判断框判断一个条件是否成立流程线连接程序框④阅读教材P5的程序框图.讨论:
输入35后,框图的运行流程,讨论:
最大的I值.2.教学算法的基本逻辑结构:
讨论:
P5的程序框图,感觉上可以如何大致分块?
流程再现出一些什么结构特征?
教师指出:
顺序结构、条件结构、循环结构.试用一般的框图表示三种逻辑结构.(见下图)①②【解难释疑】例1请用程序框图表示前面讲过的判断整数n(n2)是否为质数的算法.解:
程序框图如下:
点评:
程序框图是用图形的方式表达算法,使算法的结构更清楚,步骤更直观也更精确.这里只是让同学们初步了解程序框图的特点,感受它的优点,暂不要求掌握它的画法.变式训练观察下面的程序框图,指出该算法解决的问题.1解:
这是一个累加求和问题,共99项相加,该算法是求10099143132121++++的值.例2已知一个三角形三条边的边长分别为a,b,c,利用海伦秦九韶公式设计一个计算三角形面积的算法,并画出程序框图表示.(已知三角形三边边长分别为a,b,c,则三角形的面积为S=))()((cpbpapp),其中p=2cba++.这个公式被称为海伦秦九韶公式)算法分析:
这是一个简单的问题,只需先算出p的值,再将它代入分式,最后输出结果.因此只用顺序结构应能表达出算法.算法步骤如下:
第一步,输入三角形三条边的边长a,b,c.cba++.第二步,计算p=2第三步,计算S=))()((cpbpapp.第四步,输出S.程序框图如下:
很明显,顺序结构是由若干个依次执行的步骤组成的,它是最简单的逻辑结构,它是任何一个算法都离不开的基本结构.变式训练下图所示的是一个算法的流程图,已知a1=3,输出的b=7,求a2的值.解:
根据题意221aa+=7,∵a1=3,a2=11.即a2的值为11.例3写出通过尺轨作图确定线段AB的一个5等分点的程序框图.解:
利用我们学过的顺序结构得程序框图如下:
这个算法步骤具有一般性,对于任意自然数n,都可以按照这个算法的思想,设计出确定线段的n等分点的步骤,解决问题,通过本题学习可以巩固顺序结构的应用.【随堂练习】已知x=4,y=2,画出计算w=3x+4y的值的程序框图。
程序框如下图所示:
【归纳总结】这一节主要学习程序框、流程线的符号与功能,以及顺序结构.作业布置:
P20习题1.1A组3.教学反思:
(待定)第2课时教学要求:
更进一步理解算法,掌握算法的三个基本逻辑结构.掌握画程序框图的基本规则,能正确画出程序框图.学会灵活、正确地画程序框图.过程与方法:
通过模仿、操作、探索,经历设计程序框图表达解决问题的过程。
情感态度与价值观:
通过数学活动,感受数学对实际生活的需要,体会现实世界和数学知识的联系。
灵活、正确地画程序框图.教学难点:
运用程序框图解决实际问题.教学过程:
【情境引导】1.说出下列程序框的名称和所实现功能.2.算法有哪三种逻辑结构?
并写出相应框图顺序结构条件结构循环结构程序框图结构说明按照语句的先后顺序,从上而下依次执行这些语句.不具备控制流程的作用.是任何一个算法都离不开的基本结构根据某种条件是否满足来选择程序的走向.当条件满足时,运行是的分支,不满足时,运行否的分支.从某处开始,按照一定的条件,反复执行某一处理步骤的情况.用来处理一些反复进行操作的问题【组内合作,班内交流】1.教学程序框图①出示例1:
任意给定3个正实数,判断其是否构成三角形,若构成三角形,则根据海伦公式计算其面积.画出解答此问题算法的程序框图.(学生试写共同订正对比教材P7例3、4试验结果)②设计一个计算2+4+6++100的值的算法,并画出程序框图.(学生试写共同订正对比教材P9例5另一种循环结构)③循环语句的两种类型:
当型和直到型.当型循环语句先对条件判断,根据结果决定是否执行循环体;
直到型循环语句先执行一次循环体,再对一些条件进行判断,决定是否继续执行循环体.两种循环语句的语句结构及框图如右.说明:
循环体是由语句组成的程序段,能够完成一项工作.注意两种循环语句的区别及循环内部改变循环的条件.④练习:
用两种循环结构,写出求100所有正约数的算法程序框图.2.教学鸡兔同笼趣题:
①鸡兔同笼,我国古代著名数学趣题之一,大约在1500年以前,《孙子算经》中记载了这个有趣的问题,书中描述为:
今有雏兔同笼,上有三十五头,下有九十四足,问雏兔各几何?
②学生分析其数学解法.(站立法,命令所有的兔子都站起来;
或用二元一次方程组解答.)③欣赏古代解法:
砍足法,假如砍去每只鸡、每只兔一半的脚,则独脚鸡,双脚兔.则脚的总数47只;
与总头数35的差,就是兔子的只数,即47-35=12(只).鸡35-12=23(只).④试用算法的程序框图解答此经典问题.(算法:
鸡的头数为x,则兔的头数为35-x,结合循环语句与条件语句,判断鸡兔脚数2x+4(35-x)是否等于94.)【解难释疑】例1结合前面学过的算法步骤,利用三种基本逻辑结构画出程序框图,表示用二分法求方程x2-2=0(x0)的近似解的算法.算法分析:
(1)算法步骤中的第一步第二步和第三步可以用顺序结构来表示(如下图):
(2)算法步骤中的第四步可以用条件结构来表示(如下图).在这个条件结构中,否分支用a=m表示含零点的区间为[m,b],并把这个区间仍记成[a,b];
是分支用b=m表示含零点的区间为[a,m],同样把这个区间仍记成[a,b].(3)算法步骤中的第五步包含一个条件结构,这个条件结构与第三步第四步构成一个循环结构,循环体由第三步和第四步组成,终止循环的条件是|a-b|<d或f(m)=0.在第五步中,还包含由循环结构与输出m组成的顺序结构(如下图).(4)将各步骤的程序框图连接起来,并画出开始与结束两个终端框,就得到了表示整个算法的程序框图(如下图).例2相传古代的印度国王要奖赏国际象棋的发明者,问他需要什么.发明者说:
陛下,在国际象棋的第一个格子里面放1粒麦子,在第二个格子里面放2粒麦子,第三个格子放4粒麦子,以后每个格子中的麦粒数都是它前一个格子中麦粒数的二倍,依此类推(国际象棋棋盘共有64个格子),请将这些麦子赏给我,我将感激不尽.国王想这还不容易,就让人扛了一袋小麦,但不到一会儿就没了,最后一算结果,全印度一年生产的粮食也不够.国王很奇怪,小小的棋盘,不足100个格子,如此计算怎么能放这么多麦子?
试用程序框图表示此算法过程.解:
将实际问题转化为数学模型,该问题就是要求1+2+4++263的和.程序框图如下:
【随堂练习】100个和尚吃100个馒头,大和尚一人吃3个,小和尚3人吃一个,求大、小和尚各多少个?
分析其算法,写出程序框图.【归纳总结】
(1)进一步熟悉三种逻辑结构的应用,理解算法与程序框图的关系.
(2)根据算法步骤画出程序框图.作业布置:
P20习题1.1B组1.教学反思:
(待定)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 111 算法的概念 算法 概念