12《算法案例1》(新人教A版必修3).ppt
《12《算法案例1》(新人教A版必修3).ppt》由会员分享,可在线阅读,更多相关《12《算法案例1》(新人教A版必修3).ppt(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、v主讲老师 潘学国第一课时第一课时 1、研究一个实际问题的算法,主要、研究一个实际问题的算法,主要从算法步骤、程序框图和编写程序三方面从算法步骤、程序框图和编写程序三方面展开展开.在程序框图中算法的基本逻辑结构在程序框图中算法的基本逻辑结构有哪几种?在程序设计中基本的算法语句有哪几种?在程序设计中基本的算法语句有哪几种?有哪几种? 2、“求两个正整数的最大公约数求两个正整数的最大公约数”是数学中的一个基础性问题,它有各种解是数学中的一个基础性问题,它有各种解决办法,我们以此为案例,对该问题的算决办法,我们以此为案例,对该问题的算法作一些探究法作一些探究.问题提出问题提出思考思考1:18与与30
2、的最大公约数是多少?你是的最大公约数是多少?你是怎样得到的?怎样得到的? 先用两个数公有的质因数连续去除,先用两个数公有的质因数连续去除,一直除到所得的商是互质数为止,然后把一直除到所得的商是互质数为止,然后把所有的除数连乘起来即为最大公约数所有的除数连乘起来即为最大公约数. 辗转相除法辗转相除法1823091535318与与30的最大公约的最大公约数是数是23=6.短除法短除法思考思考2:对于对于8251与与6105这两个数,由于其这两个数,由于其公有的质因数较大,利用上述方法求最大公有的质因数较大,利用上述方法求最大公约数就比较困难。那么,有其它解决的公约数就比较困难。那么,有其它解决的办
3、法吗办法吗?注意到注意到8251=61051+2146,那,那么么8251与与6105这两个数的公约数和这两个数的公约数和6105与与2146的公约数有什么关系?的公约数有什么关系? 相等相等.思考思考3:又又6105=21462+1813,同理,同理,6105与与2146的公约数和的公约数和2146与与1813的公的公约数相等约数相等.重复上述操作,你能得到重复上述操作,你能得到8251与与6105这两个数的最大公约数吗?这两个数的最大公约数吗?2146=18131+333,148=374+0.333=1482+37,1813=3335+148,8251=61051+2146,6105=21
4、462+1813,最大公约数是最大公约数是37.思考思考4:什么是辗转相除法(欧几里得算什么是辗转相除法(欧几里得算法)?法)? 所谓辗转相除法,就是对于给定的两个数,所谓辗转相除法,就是对于给定的两个数,用较大的数除以较小的数。若余数不为零,则用较大的数除以较小的数。若余数不为零,则将余数和较小的数构成新的一对数,继续上面将余数和较小的数构成新的一对数,继续上面的除法,直到大数被小数除尽,则这时较小的的除法,直到大数被小数除尽,则这时较小的数就是原来两个数的最大公约数。这种算法是数就是原来两个数的最大公约数。这种算法是由欧几里得在公元前由欧几里得在公元前300年左右首先提出的,年左右首先提出
5、的,因而又叫欧几里得算法。因而又叫欧几里得算法。练习:练习: 用辗转相除法求用辗转相除法求225和和135的的最大公约数。最大公约数。225=1351+90135=901+4590=452+0 显然显然45是是90和和45的最大公约数,也就是的最大公约数,也就是225和和135的最大公约数的最大公约数 练习练习2 2:利用辗转相除法求两数利用辗转相除法求两数40814081与与2072320723的最大公约数的最大公约数. . (53)20723=40815+318;4081=31812+265;318=2651+53;265=535+0. 辗转相除法是一个反复执行直到余数等于辗转相除法是一个
6、反复执行直到余数等于0停止停止的步骤,这实际上是一个循环结构。的步骤,这实际上是一个循环结构。8251=61051+2146 6105=21462+1813 2146=18131+3331813=3335+148333=1482+37148=374+0m = nqr用程序框图表示出右边的过程用程序框图表示出右边的过程r=m MOD nm = nn = rr=0?是否否思考思考5:辗转相除法中的关键步骤是那种逻辑结构?辗转相除法中的关键步骤是那种逻辑结构?思考思考6:上述求两个正整数的最大公约数的方法上述求两个正整数的最大公约数的方法称为辗转相除法或欧几里得算法称为辗转相除法或欧几里得算法.一般
7、地,用辗一般地,用辗转相除法求两个正整数转相除法求两个正整数m,n的最大公约数,可的最大公约数,可以用什么逻辑结构来构造算法?其算法步骤如以用什么逻辑结构来构造算法?其算法步骤如何设计?何设计? 第一步,给定两个正整数第一步,给定两个正整数m,n(mn).第二步,计算第二步,计算m除以除以n所得的余数所得的余数r. 第三步,第三步,m=n,n=r.第四步,若第四步,若r=0,则,则m,n的最大公约数的最大公约数等等 于于m;否则,返回第二步;否则,返回第二步. 思考思考7:该算法的程序该算法的程序框图如何表示?框图如何表示?开始开始输入输入m,n求求m除以除以n的余数的余数rm=nn=rr=0
8、?是是输出输出m结束结束否否思考思考8:该程序框图对应的程序如何该程序框图对应的程序如何表述?表述?INPUT m,nDOr=m MOD nm=nn=rLOOP UNTIL r=0PRINT mEND开始开始输入输入m,n求求m除以除以n的余数的余数rm=nn=rr=0?是是输出输出m结束结束否否思考思考9: 如果用当型循环结构构造算如果用当型循环结构构造算法,则用辗转相除法求两个正整数法,则用辗转相除法求两个正整数m,n的最大公约数的程序框图和程序分的最大公约数的程序框图和程序分别如何表示?别如何表示?开始开始输入输入m,n求求m除以除以n的余数的余数rm=nn0?否否输出输出m结束结束是是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 算法案例1 12 算法 案例 新人 必修
限制150内