高中数学新课程----算法案例教案

合集下载

人教课标版高中数学必修三《算法案例(第3课时)》教案(1)-新版

人教课标版高中数学必修三《算法案例(第3课时)》教案(1)-新版

⼈教课标版⾼中数学必修三《算法案例(第3课时)》教案(1)-新版1.3 算法案例第3课时⼀、教学⽬标 1.核⼼素养在学习古代数学家解决数学问题的⽅法的过程中培养严谨的逻辑思维能⼒,在利⽤算法解决数学问题的过程中培养理性的精神和动⼿实践的能⼒. 2.学习⽬标(1)1.3.3.1理解进位制的概念,掌握各种进位制与⼗进制之间的转换规律.(2)1.3.3.2掌握⼗进位制转化为各种进位制的除k 余法. 3.学习重点各种进位制与⼗进制之间的转换规律. 4.学习难点不同进位制之间的转化规律及其思想⼆、教学设计(⼀)课前设计 1.预习任务任务1阅读教材P40-P45,思考:各种进位制与⼗进制之间转换的规律是什么?任务2你可以熟练的进⾏各进位制之间的转换吗? 2.预习⾃测1.在2进制中,0+0,0+1,1+0,1+1的值分别是多少?【解析】:分别是0,1,1,10 2.把⼆进制数()2110011化为⼗进制数【解析】:()=?+?+?+?+?+?=+++=543210211001112120202121232162151(⼆)课堂设计1.知识回顾(1)⽣活中常见的进位制有哪些(例如时间、钱等)(2)计算机中的2进制和通常的10进制怎么进⾏转换(3)⾮10的两种不同进制之间怎么进⾏转换 2.问题探究问题探究⼀认识进位制,将⼗进制数转化为k 进制数●活动⼀什么是n 进位制?我们常见的数字都是⼗进制的,但是并不是⽣活中的每⼀种数字都是⼗进制的.⽐如时间和⾓度的单位⽤六⼗进位制,电⼦计算机⽤的是⼆进制.那么什么是进位制?不同的进位制之间⼜⼜什么联系呢?进位制是⼀种记数⽅式,⽤有限的数字在不同的位置表⽰不同的数值.可使⽤数字符号的个数称为基数,基数为n ,即可称n 进位制,简称n 进制.现在最常⽤的是⼗进制,通常使⽤10个阿拉伯数字0-9进⾏记数.对于任何⼀个数,我们可以⽤不同的进位制来表⽰.⽐如:⼗进制数57,可以⽤⼆进制表⽰为111001,也可以⽤⼋进制表⽰为71、⽤⼗六进制表⽰为39,它们所代表的数值都是⼀样的.表⽰各种进位制数⼀般在数字右下脚加注来表⽰,如()2110011表⽰⼆进制数,(5)34表⽰5进制数.●活动⼆如何将10进制数转化为2进制数?解:根据⼆进制数满⼆进⼀的原则,可以⽤2连续去除89或所得商,然后去余数. 具体的计算⽅法如下:=?+=?+=?+=?+=?+892441442220222110112515221()(((())))=+++++=?+?+?+?+?+?+?=654321028922222211001120212120202121011001 这种算法叫做除2取余法,还可以⽤下⾯的除法算式表⽰:把上式中的各步所得的余数从下到上排列即可得到89=1011001(2)●活动三如何将10进制数转化为k进制数?上述⽅法可以推⼴为把⼗进制化为k进制数的算法,这种算法成为除k取余法. ⼗进制数化为k进制数(除k取余法)的步骤:1.除:把⼗进制数连续去除以k,直到商为0为⽌,同时将各步的余数写出2.取余:将各步所得的余数倒叙写出,即为所求的k进制数3.标基数:写出k进制数后将基数k⽤括号括起来标在右下⾓例1.将⼗进制数458分别转化为四进制数和六进制数.解:算式如下图,则458=13022(4)=2042(6)问题探究⼆不同进制数相互转换●活动⼀如何将10进制数与k进制数进⾏相互转换?⼆进制数110 011(2)化为⼗进制数是什么数?110 011(2)=1×25+1×24+0×23+0×22+1×21+1×20=32+16+2+1=51.那么如何将⼀个k进制数转换为⼗进制数?将k进制数a n a n-1…a1a0(k)化为⼗进制的⽅法:把k进制数a n a n-1…a1a0(k)写成各数位上的数字与基数k的幂的乘积之和的形式,然后计算出结果即为对应的⼗进制数.这样我们就可以进⾏10进制数与k进制数进⾏相互转换●活动⼆如何将⾮10的不同进制数进⾏相互转换?进制的数转化为10进制数后再把10进制的⼗进制是连接其他进制的桥梁.把k1进制数,各个进制数之间就能实现互相转换.数转化为k2例2.1 011 001(2)=______(10)=______(5).解:89,324 ⾸先将1011001(2) 化为⼗进制数为1×26+0+1×24+1×23+0+0+1×20=89,再将89化成五进制数:89除以5的商是17,余数为4,17除以5的商是3,余数为2,所以五进制数为324.3.课堂总结【知识梳理】(1)k进制化成⼗进制,幂积求和法(2)⼗进制化成k进制,除k取余法进制的数转化为10进制数后再把10进制的数转(3)不同进制之间转换:把k1化为k进制数2【重难点突破】(1)进位制之间的转换⽅法:k进制化成⼗进制,幂积求和法;⼗进制化成k 进制,除k取余法.(2)把⼀个⾮⼗进制数转化为另⼀种⾮⼗进制数,通常是把这个数先转化为⼗进制数,然后再利⽤除k取余法,把⼗进制数转化为k进制数.⽽在使⽤除k 取余法时要注意以下⼏点:1.必须除到所得的商是0为⽌;2.各步所得的余数必须从下到上排列;3.切记在所求数的右下⾓标明基数4.随堂检测1.下列各进制数中值最⼩的是( )A.85(9)B.210(6)C.1 000(4)D.111 111(2)【解析】:D 由进位制的知识易得,故选D.2.把189化为三进制数,则末位数是( )A.0 B.1 C.2 D.3【解析】:A将189除以3得余数为0,所以189化为三进制数的末位数为0. 故选A.3.已知⼀个k进制的数132与⼗进制的数30相等,那么k等于( )A.7或4 B.-7C.4 D.都不对【解析】:C132(k)=1×k2+3×k+2=k2+3k+2,∴k2+3k+2=30,即k2+3k-28=0,解得k=4或k=-7(舍去).故选C.4.四位⼆进制数能表⽰的最⼤⼗进制数是( )A.4 B.64 C.255 D.15【解析】:D由⼆进制数化为⼗进制数的过程可知,当四位⼆进制数为1 111时表⽰的⼗进制数最⼤,此时,1 111(2)=15.故选D5.七进制数中各个数位上的数字只能是______中的⼀个.【解析】:0、1、2、3、4、5、6“满⼏进⼀”就是⼏进制.∵是七进制.∴满七进⼀,根本不可能出现7或⽐7⼤的数字,所以各个数位上的数字只能是0、1、2、3、4、5、6中的⼀个.6.已知三个数12(16),25(7),33(4),将它们按由⼩到⼤的顺序排列为________.【解析】:33(4)<12(16)<25(7)将三个数都化为⼗进制数.12(16)=1×16+2=18,25(7)=2×7+5=19,33(4)=3×4+3=15,∴33(4)<12(16)<25(7).(三)课后作业基础型⾃主突破1.⼆进制数111.11(2)转换成⼗进制数是( )A.7.3 B.7.5 C.7.75 D.7.125【解析】:C 由题意知⼆进制对应的⼗进制是:1×22+1×21+1×20+1×2-1+1×2-2=4+2+1+0.5+0.25=7.75. 故选A2.将⼆进制110 101(2)转化为⼗进制为( )A.106 B.53 C.55 D.108【解析】:B110 101(2)=1+1×22+1×24+1×25=53. 故选B3.下列与⼆进制数1 001 101(2)相等的是( )A.115(8)B.113(8)C.114(8)D.116(8)【解析】:A 先化为⼗进制数:1 001 101(2)=1×26+1×23+1×22+1×20=77,再化为⼋进制数.所以77=115(8),1 001 101(2)=115(8)故选A.4.下列各数中,与1 010(4)相等的数是( )A.76(9)B.103(8)C.2 111(3)D.1 000 100(2)【解析】:D 1 010(4)=1×43+1×4=68.因为76(9)=7×9+6=69;103(8)=1×82+3=67;2111(3)=2×33+1×32+1×3+1=67;1000100(2)=1×26+1×22=68,所以1 010(4)=1 000 100(2)故选D..5.⼀个k进制的三位数与某六进制的⼆位数等值,则k不可能是( )A.3 B.4 C.5 D.7【解析】:D k进制的最⼩三位数为k2,六进制的最⼤⼆位数为5×6+5=35,由k2≤35得0…a1a0(k)表⽰⼀个k进制数,若21(k)=9,则321(k)在⼗进制中所表⽰的6.记anan-1数为( )A.86 B.57 C.34 D.17【解析】:B 由已知中21(k)=9,求出k值,进⽽利⽤累加权重法,可得答案.若21(k)=9,则2k+1=9,解得k=4,故321(k)=321(4)在+进制中所表⽰的数为:3×42+2×4+1=57. 故选B能⼒型师⽣共研7.已知1 0b1(2)=a02(3),求数字a,b的值.【解析】:a=1,b=1 ∵1 0b1(2)=1×23+b×2+1=2b+9,a02(3)=a×32+2=9a+2,∴2b+9=9a+2,即9a-2b=7.∵a∈{1,2},b∈{0,1},∴当a=1时,b=1符合题意,当a=2时,b=112不合题意,∴a=1,b=1.8.已知44(k)=36,把67(k)转化为⼗进制数为( )A.8 B.55 C.56 D.62【解析】:B 由题意得,36=4×k1+4×k0,所以k=8.则67(k)=67(8)=6×81+7×80=55. 故选B9.古时候,当边境有敌⼈来犯时,守边的官兵通过在烽⽕台上举⽕向国内报告,如图,烽⽕台上点⽕,表⽰数字1,不点⽕表⽰数字0,约定⼆进制数对应的⼗进制的单位是1 000,请你计算⼀下,这组烽⽕台表⽰约有多少敌⼈⼊侵?【解析】:27 000 由图可知从左到右的五个烽⽕台,表⽰⼆进制数的⾃左到右五个数位,依题意知这组烽⽕台表⽰的⼆进制数是11 011,改写为⼗进制为:11 011(2)=1×24+1×23+0×22+1×21+1×20=16+8+2+1=27(10).⼜27×1 000=27 000,所以这组烽⽕台表⽰边境约有27 000个敌⼈来犯.探究型多维突破10.分别⽤算法步骤、程序框图、程序语句表⽰把k进制数a(共有n位数)转化成⼗进制数b.【解析】:算法步骤:第⼀步,输⼊a,k,n的值.第⼆步,赋值b=0,i=1.第三步,b=b+a i·k i-1,i=i+1.第四步,判断i>n是否成⽴.若是,则执⾏第五步;否则,返回第三步.第五步,输出b的值.程序框图:程序语句:11.若10y1(2)=x02(3),求数字x,y的值及与此两数等值的⼗进制数.【解析】:x=y=1,11∵10y1(2)=x02(3),∴1×23+0×22+y×2+1=x×32+0×3+2,将上式整理得9x-2y=7,由进位制的性质知,x∈{1,2},y∈{0,1},当y=0时,x=(舍),当y=1时,x=1.∴x=y=1,已知数为102(3)=1 011(2),与它们相等的⼗进制数为1×32+0×3+2=11.⾃助餐1.在什么进位制中,⼗进位制数71记为47( )A.17 B.16 C.8 D.12【解析】:B 设为k进制,有:4k+7=71,从⽽可解得k=16.因此是16进制.故选B.2.把⼗进制数20化为⼆进制数为( )A.10 000(2)B.10 100(2)C.11 001(2)D.10 001(2)【解析】:B 利⽤除2取余数可得.故选B3.在⼋进制中12(8)+7(8)=21(8),则12(8)×7(8)的值为( )A.104(8)B.106(8)C.70(8)D.74(8)【解析】:B 12(8)=1×81+2×80=10(10),7(8)=7×80=7(10),12(8)×7(8)=70(10).故70(10)=106(8).即12(8)×7(8)=106(8).故选B4.将四位⼋进制数中的最⼩数转化为六进制数为( )A.2 120 B.3 120 C.2 212 D.4 212【解析】:C 四位⼋进制中的最⼩数为1 000(8).所以1 000(8)=1×83=512.再将512除以6取余得512=2 212(6).故选C5.两个⼆进制数101(2)与110(2)的和⽤⼗进制数表⽰为( )A.12 B.11 C.10 D.9【解析】:B101(2)=1×22+0×21+1×20=5,110(2)=1×22+1×21+0×20=6,5+6=11.故选B6.在计算机的运⾏过程中,常常要进⾏⼆进制数与⼗进制数的转换与计算.如⼗进制数8转换成⼆进制数是1 000,记作8(10)=1 000(2);⼆进制数111转换成⼗请进制数是7,记作111(2)=7(10)等.⼆进制的四则运算,如11(2)+101(2)=1 000(2).计算:11(2)×111(2)=________,10 101(2)+1 111(2)=________.【解析】:10 101(2),100 100(2)由题可知,在⼆进制数中的运算规律是“满⼆进⼀”,∴11(2)×111(2)=10 101(2),10 101(2)+1 111(2)=100 100(2).7.1 101(2)+1 011(2)=__________(⽤⼆进制数表⽰).【解析】:11 000(2)1 101(2)=1×23+1×22+1=13;1 011(2)=1×23+1×2+1=11,则1101(2)+1011(2)=24.即24=11 000(2).。

人教版高中数学必修三 第一章 算法初步算法案例—辗转相除法-教学设计

人教版高中数学必修三 第一章 算法初步算法案例—辗转相除法-教学设计

算法案例—辗转相除法-教学设计一、教材分析选自苏教版普通高中课程标准实验教科书必修3第一章第4节。

1、地位作用:与传统教学内容相比,《算法初步》为新增内容,算法是计算机科学的重要基础,从日常生活的电子邮件发送到繁忙的交通管理,从与人们生产、生活息息相关的天气预报到没有硝烟的战争模拟等等都离不开计算机算法。

算法思想已经渗透到社会的方方面面,算法思想也逐渐成为每个现代人应具有的数学素养。

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

本节内容是探究古代算法案例――辗转相除法,巩固算法三种描述性语言(自然语言、流程图和伪代码),提高学生分析和解决问题的能力。

2、教学目标:(1)知识目标:①理解辗转相除法原理;②能用自然语言、流程图和伪代码表达辗转相除法;③能应用迭代算法思想。

(2)能力目标:①培养学生把具体问题抽象转化为算法语言的能力;②培养学生自主探索和合作学习的能力。

(3)情感目标:①使学生进一步了解从具体到抽象,抽象到具体的辨证思想方法,对学生进行辨证唯物主义教育;②创设和谐融洽的教学氛围和阶梯形问题,使学生在活动中获得成功感,从而培养学生热爱数学、积极学习数学、应用数学的热情。

3、教学重点与难点:(1)教学重点:①理解辗转相除法原理;②能用自然语言、流程图和伪代码表达辗转相除法。

(2)教学难点:①理解和区分两种循环结构表达辗转相除法;②能应用迭代算法思想。

二、教法学法1、教法:以问题为载体,有引导的对话,让学生经历知识的形成过程和发展过程,从而突出教学重点,并采用多媒体教学,增加课堂容量,有利于学生活动的充分展开。

2、学法:以观察、讨论、思考、分析、动手操作、自主探索、合作学习多种形式相结合,引导学生多角度、多层面认识事物,突破教学难点。

三、教学过程设计:1、情景设置――感知辗转相除法(发给每位学生一张长为22cm ,宽为6cm 的纸条)【问1】这张长方形的纸,先拿短边往长边上折,得到一个正方形,从长方形上裁掉这个正方形后继续将短边往长边上折,一直到最后剩下来的是正方形为止,最后得到的边长是几的正方形?【师生互动解答】22=6×3+4;6 = 4×1+2;4 = 2×2+0 => 最后正方形的边长为2cm 。

1.3.1《算法案例--辗转相除法和更相减损术》

1.3.1《算法案例--辗转相除法和更相减损术》
进而由贝祖等式就可 以求解二元一次不定 方程的通解。
01.07.2019
93 168 1
75 93 18 75 4 18 72 03
3、利用辗转相除法求最大公约数的步骤如下: 第一步:用较大的数m除以较小的数n得到
一个商q0和一个余数r0;(m=n×q0+r0) 第二步:若r0=0,则n为m,n的最大公约
数. 2. 更相减损术,就是对于给定的两个正
整数,用较大的数减去较小的数,然后将差 和较小的数构成新的一对数,继续上面的减 法,直到差和较小的数相等,此时相等的两 数0即1.07.20为1损术的区别
(1)都是求最大公约数的方法,计算上辗转相除 法以除法为主,更相减损术以减法为主,计算次数 上辗转相除法计算次数相对较少,特别当两个数字 大小区别较大时计算次数的区别较明显。
教学难点 :转相除法与更相减损术的方法转 换成程序框图与程序语言。
01.07.2019
问题提出
1.研究一个实际问题的算法,主要从 算法步骤、程序框图和编写程序三方面 展开.在程序框图中算法的基本逻辑结构 有哪几种?在程序设计中基本的算法语 句有哪几种?
2.“求两个正整数的最大公约数” 是数学中的一个基础性问题,它有各种 解决办法,我们以此为案例,对该问题 的算法作一些探究.
m=n

输出m 结束
INPUT m,n WHILE m<>n
k=m-n IF mn=>nk THEN
n=k ELSEm=k END IF WEND PRINT m
01.07.2019
n=k
END
例2 分别用更相减损术和辗转相除法求98
与63的最大公约数。
解:由于63不是偶数,把98和63以大数减小数,

高中数学算法案例-进位制(公开课)教案 新人教A版必修3

高中数学算法案例-进位制(公开课)教案 新人教A版必修3

必修3第一章1.3算法案例:案例3进位制[教学目标]:(1)了解各种进位制与十进制之间转换的规律,会利用各种进位制与十进制之间的联系进行各种进位制之间的转换。

(2)学习各种进位制转换成十进制的计算方法,研究十进制转换为各种进位制的除k 去余法,并理解其中的数学规律。

[教学重点]各进位制表示数的方法及各进位制之间的转换[教学难点]除k取余法的理解[情感态度价值观] 学生通过合作完成任务,领悟十进制,二进制的特点,了解计算机与二进制的联系,进一步认识到计算机与数学的联系,培养他们的合作精神和严谨的态度。

[教学方法] 讲解法、尝试法、归纳法、讨论法、[教学用具]多媒体电脑[学法] 学习各种进位制特点的同时探讨进位制表示数与十进制表示数的区别与联系,熟悉各种进位制表示数的方法,从而理解十进制转换为各种进位制的除k取余法。

[教学过程]一、创设情景,揭示课题辗转相除法和更相减损术,是求两个正整数的最大公约数的算法,秦九韶算法是求多项式的值的算法,将这些算法转化为程序,就可以由计算机来完成相关运算。

人们为了计数和运算方便,约定了各种进位制,本节课我们来共同学习《进位制》你都了解那些进位制?比如说?在日常生活中,我们最熟悉、最常用的是十进位制,据说这与古人曾以手指计数有关;由于计算机的计算与记忆元件特点,计算机上通用的是二进位制;一周七天是七进位;一年十二个月〔生肖、一打〕是十二进制;旧式的称是十六进制;〔老称一斤为16两,故而有了半斤八两之说〕、24进制〔节气〕一小时六十分、角度的单位是六十进位制。

二进制是有德国数学家莱布尼兹发明的。

第一台计算机ENIAC〔埃尼阿克〕用的就是十进制。

计算机之父冯·诺伊曼研究后,提出改进意见,用二进制替代十进制。

主要原因①二进制只有0和1两个数字,要得到两种不同稳定状态的电子器件很容易,而且制造简单,可靠性高;②各种计数法中,二进制运算规那么简单。

如:十进 制乘法叫九九表,二进制只有4句。

高中数学《算法初步》教案新人教A版必修

高中数学《算法初步》教案新人教A版必修

高中数学《算法初步》教案新人教A版必修一、教学目标1. 理解算法的基本概念,了解算法在数学和日常生活中的应用。

2. 掌握算法的基本步骤,能够清晰地描述和分析算法的过程。

3. 学会使用循环结构编写算法,熟练掌握基本的编程技巧。

4. 通过解决实际问题,培养学生的逻辑思维能力和创新能力。

二、教学内容1. 算法的基本概念:算法、输入、输出、步骤2. 算法的基本步骤:排序、查找、乘法口诀、求解一元二次方程3. 循环结构:for循环、while循环、do-while循环4. 实际问题求解:编写算法解决生活中的实际问题,如计算器、购物清单等。

三、教学重点与难点1. 重点:算法的基本概念、基本步骤和循环结构。

2. 难点:循环结构的嵌套使用和复杂问题的算法设计。

四、教学方法与手段1. 采用问题驱动的教学方法,引导学生从实际问题中提炼出算法。

2. 使用多媒体教学手段,展示算法的过程和效果,增强学生的直观感受。

3. 引导学生通过编程实践,巩固算法知识,提高解决问题的能力。

五、教学安排1. 第一课时:介绍算法的基本概念,学习算法的输入、输出、步骤。

2. 第二课时:学习算法的基本步骤,掌握排序、查找、乘法口诀、求解一元二次方程等基本算法。

3. 第三课时:学习循环结构,掌握for循环、while循环、do-while循环的用法。

4. 第四课时:运用所学算法解决实际问题,编写算法程序。

5. 第五课时:进行课堂讨论,分享算法解决问题的经验,进行算法设计的交流和探讨。

六、教学过程1. 导入:通过引入日常生活中的算法例子,如计算购物找零、制定旅行计划等,激发学生的兴趣,引出算法的概念。

2. 新课导入:介绍算法的定义、特点和作用,引导学生了解算法在数学和科学领域中的应用。

3. 案例分析:分析排序、查找等基本算法,让学生通过具体案例理解算法的基本步骤和原理。

4. 编程实践:让学生动手编写简单的算法程序,如排序算法、查找算法等,加深对算法概念的理解。

高中数学算法的教案

高中数学算法的教案

高中数学算法的教案教学目标:1. 了解算法的基本概念和原理;2. 掌握常见的数学算法,如欧几里德算法、快速幂算法等;3. 能够通过算法解决实际问题。

教学重点:1. 算法的基本概念和原理;2. 欧几里德算法;3. 快速幂算法。

教学难点:1. 算法的应用;2. 算法的复杂度分析。

教学准备:1. 讲义、PPT等教学资料;2. 白板、彩色笔等教学工具。

教学过程:一、引言(5分钟)介绍算法在现代社会中的重要性,激发学生学习算法的兴趣。

二、算法的基本概念(10分钟)1. 定义:算法是解决问题的一个有限指令序列;2. 特点:输入、输出、有限性、确定性和有效性。

三、欧几里德算法(20分钟)1. 算法原理:求两个整数的最大公约数;2. 算法步骤:辗转相除法;3. 算法实现:通过示例演示欧几里德算法的具体操作。

四、快速幂算法(20分钟)1. 算法原理:求指数运算的快速方法;2. 算法步骤:分治思想;3. 算法实现:通过示例演示快速幂算法的具体操作。

五、综合练习(15分钟)结合欧几里德算法和快速幂算法,进行练习题的讲解和解答。

六、实际应用(10分钟)介绍算法在实际生活和工作中的应用,如密码学、图像处理等领域。

七、作业布置(5分钟)布置相关练习题,巩固学生对算法的理解和掌握。

教学反思:通过本节课的教学,学生对算法的基本概念和常见算法有了更深入的了解,同时也提高了对算法的应用能力。

在今后的教学中,需要进一步引导学生灵活运用算法解决问题,提高他们的综合思考能力和实践能力。

高中数学算法案例教案

高中数学算法案例教案

高中数学算法案例教案
课题:排序算法——冒泡排序
教学目标:
1.了解冒泡排序算法的基本原理及实现过程。

2.掌握冒泡排序算法在实际应用中的应用场景。

3.能够通过编程实现冒泡排序算法。

4.培养学生的逻辑思维能力和编程实践能力。

教学过程:
一、导入新知识(5分钟)
向学生介绍冒泡排序算法的基本原理及实现过程,通过示例演示冒泡排序的排序过程。

二、理论学习(15分钟)
1.讲解冒泡排序算法的原理:比较相邻的元素,如果前一个比后一个大,则交换两个元素
的位置。

2.详细讲解冒泡排序的实现过程,并通过示例展示冒泡排序的排序过程。

三、算法分析(15分钟)
与学生一起分析冒泡排序算法的时间复杂度,引导学生思考如何优化冒泡排序算法的性能。

四、实际操作(20分钟)
1.让学生通过编程实现冒泡排序算法,并让他们自行编写测试用例进行验证。

2.引导学生思考如何改进冒泡排序算法,提高其效率。

五、应用拓展(10分钟)
探讨冒泡排序算法在实际应用中的场景,并引导学生思考如何在实际问题中应用冒泡排序
算法。

六、总结归纳(5分钟)
回顾本节课的主要内容,强调冒泡排序算法的重要性和应用价值。

七、作业布置(5分钟)
布置任务:要求学生练习编写冒泡排序算法,并结合实际问题进行应用。

教学反思:
通过本堂课的教学,学生对冒泡排序算法有了更深刻的理解,通过实际操作提高了他们的编程实践能力,培养了他们的逻辑思维能力。

在未来的教学中,需要更加注重培养学生的实践能力和创新能力,引导学生将所学知识应用到实际问题中。

高中数学 算法案例 (1)教案 新人教A版必修3

高中数学 算法案例 (1)教案 新人教A版必修3
教学用具:投影仪
教学方法:启发式教学
教学过程:
一、新课导入:
提出问题:在小学,我们已经学过求最大公约数的知识,如口算求出12与20的公约数。其方法为:先用两个数公有的质因数连续去除,一直除到所得的商是互质数为止,然后把所有的除数连乘起来。我们都是利用找公约数的方法来求最大公约数,如果公约数比较大而且根据我们的观察又不能得到一些公约数,我们又应该怎样求它们的最大公约数?比如求8251与6105的最大公约数?这就是我们这一堂课所要探讨的内容。
算法案例
教学目标:(1)理解辗转相除法与更相减损术中蕴含的数学原理,并能根据这些原理进行算法分析;(2)基本能根据算法语句与程序框图的知识设计完整的程序框图并写出算法程序;(3)进一步体会算法的基本思想;
教学重点:理解辗转相除法与更相减损术求最大公约数的方法。
教学难点:把辗转相除法与更相减损术的方法转换成程序框图与程序语言。.
6105=2146×2+1813 2146=1813×1+333
1813=333×5+148 333=148×2+37
148=37×4+0
最后的除数37是148和37的最大公约数,也就是8251与6105的最大公约数。
以上我们求最大公约数的方法就是辗转相除法。也叫欧几里德算法,它是由欧几里德在公元前300年左右首先提出的。
利用辗转相除法求最大公约数的步骤如下:
(1).用较大的数m除以较小的数n得到一个商 和一个余数 ;
(2).若 =0,则n为m,n的最大公约数;若 ≠0,则用除数n除以余数 得到一个商 和一个余数 ;
(3).若 =0,则 为m,n的最大公约数;若 ≠0,则用除数 除以余数 得到一个商 和一个余数 ;……依次计算直至 =0,此时所得到的 即为所求的最大公约数。

高中数学《算法初步》教案新人教A版必修

高中数学《算法初步》教案新人教A版必修

高中数学《算法初步》教案新人教A版必修一、教材分析本节课所使用的教材为新人教A版高中数学必修教材,内容涉及算法初步。

算法初步是高中数学的重要组成部分,主要让学生了解算法的基本概念、特点和应用。

通过学习算法初步,学生能够理解算法的本质,提高解决问题的能力。

二、教学目标1. 了解算法的概念、特点和表示方法。

2. 掌握算法的基本逻辑结构,如顺序结构、条件结构和循环结构。

3. 能够分析实际问题,设计简单的算法解决问题。

4. 培养学生的逻辑思维能力和创新能力。

三、教学重点与难点1. 教学重点:算法的概念、特点和表示方法。

算法的基本逻辑结构。

设计简单算法解决问题的方法。

2. 教学难点:算法的设计和分析。

循环结构在实际问题中的应用。

四、教学方法1. 采用问题驱动的教学方法,引导学生从实际问题中认识算法的重要性。

2. 通过案例分析,让学生理解算法的基本逻辑结构。

3. 利用编程实践,培养学生设计算法解决问题的能力。

4. 采用小组讨论、合作学习的方式,提高学生的参与度和积极性。

五、教学过程1. 导入新课:通过生活中的实例,引导学生了解算法在日常生活中的应用。

提问:什么是算法?算法有什么特点?2. 讲解算法的基本概念:解释算法的定义,强调算法是解决问题的一系列步骤。

阐述算法的特点,如确定性、有穷性和可行性。

3. 学习算法表示方法:介绍算法的图形表示和伪代码表示。

举例说明不同表示方法在解决问题中的应用。

4. 掌握算法的基本逻辑结构:顺序结构:按照一定的顺序执行步骤。

条件结构:根据条件选择不同的执行路径。

循环结构:重复执行某些步骤直到满足条件。

5. 设计简单算法解决问题:分析实际问题,如计算Fibonacci 数列的前n项和。

引导学生设计算法,并利用编程工具实现。

6. 课堂小结:强调算法在解决问题中的重要性。

7. 课后作业:完成课后练习,巩固所学内容。

设计一个简单的算法,解决实际问题。

8. 课后反思:教师对本节课的教学效果进行反思,分析学生的掌握情况。

人教版高中数学必修三 算法案例(进位制)优质教案

人教版高中数学必修三 算法案例(进位制)优质教案

第3课时案例3 进位制(一)导入新课情境导入在日常生活中,我们最熟悉、最常用的是十进制,据说这与古人曾以手指计数有关,爱好天文学的古人也曾经采用七进制、十二进制、六十进制,至今我们仍然使用一周七天、一年十二个月、一小时六十分的历法.今天我们来学习一下进位制.(二)推进新课、新知探究、提出问题(1)你都了解哪些进位制?(2)举出常见的进位制.(3)思考非十进制数转换为十进制数的转化方法.(4)思考十进制数转换成非十进制数及非十进制之间的转换方法.活动:先让学生思考或讨论后再回答,经教师提示、点拨,对回答正确的学生及时表扬,对回答不准确的学生提示引导考虑问题的思路.讨论结果:(1)进位制是人们为了计数和运算方便而约定的计数系统,约定满二进一,就是二进制;满十进一,就是十进制;满十二进一,就是十二进制;满六十进一,就是六十进制等等.也就是说:“满几进一”就是几进制,几进制的基数(都是大于1的整数)就是几.(2)在日常生活中,我们最熟悉、最常用的是十进制,据说这与古人曾以手指计数有关,爱好天文学的古人也曾经采用七进制、十二进制、六十进制,至今我们仍然使用一周七天、一年十二个月、一小时六十分的历法.(3)十进制使用0~9十个数字.计数时,几个数字排成一行,从右起,第一位是个位,个位上的数字是几,就表示几个一;第二位是十位,十位上的数字是几,就表示几个十;接着依次是百位、千位、万位……例如:十进制数3 721中的3表示3个千,7表示7个百,2表示2个十,1表示1个一.于是,我们得到下面的式子:3 721=3×103+7×102+2×101+1×100.与十进制类似,其他的进位制也可以按照位置原则计数.由于每一种进位制的基数不同,所用的数字个数也不同.如二进制用0和1两个数字,七进制用0~6七个数字.一般地,若k是一个大于1的整数,那么以k为基数的k进制数可以表示为一串数字连写在一起的形式a n a n-1…a1a0(k)(0<a n<k,0≤a n-1,…,a1,a0<k).其他进位制的数也可以表示成不同位上数字与基数的幂的乘积之和的形式,如110 011(2)=1×25+1×24+0×23+0×22+1×21+1×20,7 342(8)=7×83+3×82+4×81+2×80.非十进制数转换为十进制数比较简单,只要计算下面的式子值即可:a n a n-1…a1a0(k)=a n×k n+a n-1×k n-1+…+a1×k+a0.第一步:从左到右依次取出k进制数a n a n-1…a1a0(k)各位上的数字,乘以相应的k的幂,k的幂从n开始取值,每次递减1,递减到0,即a n×k n,a n-1×k n-1,…,a1×k,a0×k0;第二步:把所得到的乘积加起来,所得的结果就是相应的十进制数.(4)关于进位制的转换,教科书上以十进制和二进制之间的转换为例讲解,并推广到十进制和其他进制之间的转换.这样做的原因是,计算机是以二进制的形式进行存储和计算数据的,而一般我们传输给计算机的数据是十进制数据,因此计算机必须先将十进制数转换为二进制数,再处理,显然运算后首次得到的结果为二进制数,同时计算机又把运算结果由二进制数转换成十进制数输出.1°十进制数转换成非十进制数把十进制数转换为二进制数,教科书上提供了“除2取余法”,我们可以类比得到十进制数转换成k进制数的算法“除k取余法”.2°非十进制之间的转换一个自然的想法是利用十进制作为桥梁.教科书上提供了一个二进制数据与16进制数据之间的互化的方法,也就是先由二进制数转化为十进制数,再由十进制数转化成为16进制数.(三)应用示例思路1例1 把二进制数110 011(2)化为十进制数.解:110 011(2)=1×25+1×24+0×23+0×22+1×21+1×20=1×32+1×16+1×2+1=51.点评:先把二进制数写成不同位上数字与2的幂的乘积之和的形式,再按照十进制的运算规则计算出结果.变式训练设计一个算法,把k进制数a(共有n位)化为十进制数b.算法分析:从例1的计算过程可以看出,计算k进制数a的右数第i位数字a i与k i-1的乘积a i·k i-1,再将其累加,这是一个重复操作的步骤.所以,可以用循环结构来构造算法.算法步骤如下:第一步,输入a,k和n的值.第二步,将b的值初始化为0,i的值初始化为1.第三步,b=b+a i·k i-1,i=i+1.第四步,判断i>n是否成立.若是,则执行第五步;否则,返回第三步.第五步,输出b的值.程序框图如下图:程序:INPUT “a,k,n=”;a,k,nb=0i=1t=a MOD 10DOb=b+t*k^(i-1)a=a\\10t=a MOD 10i=i+1LOOP UNTIL i>nPRINT bEND例2 把89化为二进制数.解:根据二进制数“满二进一”的原则,可以用2连续去除89或所得商,然后取余数.具体计算方法如下:因为89=2×44+1,44=2×22+0,22=2×11+0,11=2×5+1,5=2×2+1,2=2×1+0,1=2×0+1,所以89=2×(2×(2×(2×(2×2+1)+1)+0)+0)+1=2×(2×(2×(2×(22+1)+1)+0)+0)+1=…=1×26+0×25+1×24+1×23+0×22+0×21+1×20=1 011 001(2).这种算法叫做除2取余法,还可以用下面的除法算式表示:把上式中各步所得的余数从下到上排列,得到89=1 011 001(2).上述方法也可以推广为把十进制数化为k进制数的算法,称为除k取余法.变式训练设计一个程序,实现“除k取余法”.算法分析:从例2的计算过程可以看出如下的规律:若十制数a除以k所得商是q0,余数是r0,即a=k·q0+r0,则r0是a的k进制数的右数第1位数.若q0除以k所得的商是q1,余数是r1,即q0=k·q1+r1,则r1是a的k进制数的左数第2位数.……若q n-1除以k所得的商是0,余数是r n,即q n-1=r n,则r n是a的k进制数的左数第1位数.这样,我们可以得到算法步骤如下:第一步,给定十进制正整数a和转化后的数的基数k.第二步,求出a除以k所得的商q,余数r.第三步,把得到的余数依次从右到左排列.第四步,若q≠0,则a=q,返回第二步;否则,输出全部余数r排列得到的k进制数.程序框图如下图:程序:INPUT “a,k=”;a,kb=0i=0DOq=a\\kr=a MOD kb=b+r*10^ii=i+1a=qLOOP UNTIL q=0PRINT bEND思路2例1 将8进制数314 706(8)化为十进制数,并编写出一个实现算法的程序.解:314 706(8)=3×85+1×84+4×83+7×82+0×81+6×80=104 902.所以,化为十进制数是104 902.点评:利用把k进制数转化为十进制数的一般方法就可以把8进制数314 706(8)化为十进制数.例2 把十进制数89化为三进制数,并写出程序语句.解:具体的计算方法如下:89=3×29+2,29=3×9+2,9=3×3+0,3=3×1+0,1=3×0+1,所以:89(10)=10 022(3).点评:根据三进制数满三进一的原则,可以用3连续去除89及其所得的商,然后按倒序的顺序取出余数组成数据即可.(四)知能训练将十进制数34转化为二进制数.分析:把一个十进制数转换成二进制数,用2反复去除这个十进制数,直到商为0,所得余数(从下往上读)就是所求.解:即34(10)=100 010(2)(五)拓展提升把1 234(5)分别转化为十进制数和八进制数.解:1 234(5)=1×53+2×52+3×5+4=194.则1 234(5)=302(8)所以,1 234(5)=194=302(8)点评:本题主要考查进位制以及不同进位制数的互化.五进制数直接利用公式就可以转化为十进制数;五进制数和八进制数之间需要借助于十进制数来转化.(六)课堂小结(1)理解算法与进位制的关系.(2)熟练掌握各种进位制之间转化.(七)作业习题1.3A组3、4.。

新课标人教版高中数学必修3A《算法的概念》教案设计

新课标人教版高中数学必修3A《算法的概念》教案设计

第一章算法初步1. 1. 1算法的概念一、教学目标:1、知识与技能:(1 )了解算法的含义,体会算法的思想。

(2)能够用自然语言叙述算法。

(3)掌握正确的算法应满足的要求。

(4)会写出解线性方程(组)的算法。

(5)会写出一个求有限整数序列中的最大值的算法。

(6)会应用Scilab求解方程组。

b5E2RGbCAP2、过程与方法:通过求解二元一次方程组,体会解方程的一般性步骤,从而得到一个解二元一次方程组的步骤,这些步骤就是算法,不同的问题有不同的算法。

由于思考问题的角度不同,同一个问题也可能有多个算法,能模仿求解二元一次方程组的步骤,写出一个求有限整数序列中的最大值的算法。

p1EanqFDPw3、情感态度与价值观:通过本节的学习,使我们对计算机的算法语言有一个基本的了解,明确算法的要求,认识到计算机是人类征服自然的一各有力工具,进一步提高探索、认识世界的能力。

DXDiTa9E3d二、重点与难点:重点:算法的含义、解二元一次方程组和判断一个数为质数的算法设计。

难点:把自然语言转化为算法语言。

三、学法与教学用具:学法:1、写出的算法,必须能解决一类问题(如:判断一个整数n(n >1)是否为质数;求任意一个方程的近似解;……),并且能够重复使用。

RTCrpUDGiT2、要使算法尽量简单、步骤尽量少。

3、要保证算法正确,且计算机能够执行,如:让计算机计算1X 2 X 3X 4 X 5是可以做到的,但让计算机去执行“倒一杯水”“替我理发”等则是做不到的。

5PCZVD7HXA教学用具:电脑,计算器,图形计算器四、教学设想:1、创设情境:算法作为一个名词,在中学教科书中并没有出现过,我们在基础教育阶段还没有接触算法概念。

但是我们却从小学就开始接触算法,熟悉许多问题的算法。

如,做四则运算要先乘除后加减,从里往外脱括弧,竖式笔算等都是算法,至于乘法口诀、珠算口诀更是算法的具体体现。

我们知道解一元二次方程的算法,求解一元一次不等式、一元二次不等式的算法,解线性方程组的算法,求两个数的最大公因数的算法等。

苏教版高中数学必修三《算法案例:二分法求方程近似解》教案

苏教版高中数学必修三《算法案例:二分法求方程近似解》教案

1.4 算法案例重点难点重点:理解区间二分法的意义;学会分析类似的问题;通过案例分析,体会算法思想难点:理解二分法的算法思想和算法表示 学习要求1.理解区间二分法的意义,二分法主要是采用了循环结构处理问题要会分析类似的问题。

2.能由流程图分析出期所含有的结构并用为代码表示出相应的算法.3.GoTo 语句的认识及其他语句的进一步熟悉。

【课堂互动】问题:用区间二分法写出方程013=--x x 在区间[1,1.5]内的一个近似解(误差不超过0.001)的一个算法。

算法设计思想:令函数1)(3--=x x x f .如图,如果估计出方程()0f x =在某区间[,]a b 内有一个根*x ,就能用二分法搜索求得符合误差限制c 的近似解.取[a ,b]的中点0x ,如果f(0x )=0,则0x 就是方程的根;否则判断根*x 在0x 的左侧还是右侧,如果在左侧,就用[a ,0x ]代替区间 [a ,b]。

如果在右侧,就用[0x ,b]代替区间[a ,b],如此循环下去,直到|a-b|<(c 是约定的误差范围,本例中为0.001)时终止,此时*x ≈0x 。

算法步骤:S1 取[a ,b]的中点)(210b a x +=,将区间一分为二; S2 若0)(0=x f ,则0x 就是方程的根;否则判断根*x 在0x 的左侧还是右侧: 若)()(0x f a f >0,则),(0*b x x ∈,以0x 代替a ; 若)()(0x f a f <0,则),(0*x a x ∈,以0x 代替b ; S3 若b a -<c ,计算终止,此时*x ≈0x ,否则转S1。

【流程图】0)(0=x f)()(0x f a f <0开始 Y结束输入a ,b ,c)(a f ←13--a a)(0x f ←1030--x x输出0x )(210b a x +=a ←0xb ←0xb a -<cNY NY N【伪代码】代码1: Read a,b,c02a bx +←While ||a b c -≥ And 30010x x --≠ If 3(1)a a --⨯300(1)x x --<00b x ← Else 0a x ← End If02a bx +←End While Print 0x 代码2:10 Read ,,a b c 20 0()2a b x +←30 3()1f a a a ←--40 3000()1f x x x ←--50 If 0()0f x = Then GoTo 120 60 If 0()()0f a f x < Then 70 0b x ← 80 Else 90 0a x ← 100 End If110 If ||a b c -≥ Then GoTo 20 120 Print 0x【追踪训练】1.在直角坐标系中作出函数x y 2=和x y -=4的图象,根据图象判断方程x x -=42的解的范围,再用二分法求这个方程的近似解(误差不超过0.001),并写出这个算法的伪代码,画出流程图。

高中数学必修三算法教案

高中数学必修三算法教案

高中数学必修三算法教案
教学目标:
1. 了解算法的基本概念和作用;
2. 掌握常见的算法思想和方法;
3. 能够运用不同算法解决实际问题。

教学重点:
1. 算法的基本概念和特征;
2. 常见的排序算法和查找算法;
3. 算法的应用与实际问题解决。

教学难点:
1. 掌握算法的具体实现方法;
2. 理解算法的时间复杂度和空间复杂度。

教学准备:
1. 教师准备PPT课件和相关教学资料;
2. 学生准备笔记本等学习工具。

教学过程:
1. 引入:讲解算法的概念和作用,引导学生思考算法在生活中的应用场景。

2. 授课:依次介绍常见的排序算法和查找算法,如冒泡排序、快速排序、二分查找等,并讲解其原理和实现方法。

3. 练习:组织学生进行相关算法的练习,加深对算法的理解和掌握。

4. 应用:引导学生运用所学算法解决实际问题,并讨论解决过程中的思考和优化方法。

5. 总结:总结本节课的重点和难点,强调算法的实际应用和重要性。

教学反思:
1. 教学内容是否贴近学生生活和实际需求;
2. 学生对算法的理解和掌握程度,是否需要加强巩固;
3. 教学方法是否有效,如何提高教学效果。

高中数学新课程创新教学设计案例点到直线的距离

高中数学新课程创新教学设计案例点到直线的距离

24 点到直线的距离教材分析点到直线的距离是解析几何的重要内容之一,它的应用十分广泛.点到直线的距离是指由点向直线引垂线的垂线段的长.我们知道,求点到点的距离,有“工具”———两点间的距离公式可用,同样有必要创造出一套“工具”来方便地解决点到直线的距离问题,也就是说:已知点Px1,y1和直线l:Ax+By+C=0,A,B不全为0,目标是设法用已知的量x1,y1,A,B,C把点P到l的距离表示出来,当作公式用.教材上公式的推导运用了两点间的距离公式,具体做法是作直线m过点P与l垂直,设垂足为P o x o,y o,P o满足直线m的方程,也满足直线l的方程,将P o的坐标分别代入直线m和直线l的方程,通过恒等变形利用两点间的距离公式,推出点到直线的距离公式.这种方法思路清晰,学生易于接受,但恒等变形较抽象,学生难于掌握,故教学中应注意启发学生怎样想到这样变形.这样既可以活跃学生的思维,又可以锻炼其发现问题、研究问题、解决问题的能力.公式的推导方法还有很多,对学有余力的同学可加以启发,展开讨论,以培养其数学思维能力.这节课的重点是理解和掌握点到直线的距离公式,并能熟练地应用公式求点到直线的距离,难点是点到直线的距离公式的推导.教学目标1. 通过探索点到直线距离公式的思维过程,培养学生探索与研究问题能力.2. 理解和掌握点到直线的距离公式,体会知识发生、发展、运用的过程,数形结合、化归和转化的数学思维,培养学生科学的思维方法和发现问题、解决问题的能力.任务分析这节课是在学习了“两点间的距离公式”、“两条直线的位置关系”的基础上引入的,通过复习两直线垂直、两直线相交及两点间的距离公式,学生容易想到把点到直线的距离问题转化为两点间的距离问题.为了利用两点间的距离公式,须要求垂足的坐标.若利用垂线与已知直线相交解出垂足的坐标,想法自然,但求解较繁,为了简化解题过程,自然要想其他方法,教材采用了设而不求,整体代换来解决问题,简单明了,但恒等变形较难,因此,通过分析两点间的距离公式与点到直线距离的联系和区别,找到恒等变形的思路是解决问题的关键.本课通过观察、分析掌握两点间距离公式的特点,总结应用两点间距离公式的步骤;通过例题和练习使学生掌握并能应用两点间距离公式解决有关问题;通过探索和研究有关问题培养学生的数学思维能力.教学设计一、问题情境1. 某供电局计划年底解决本地区一个村庄的用电问题,经过测量,若按部门内部设计好的坐标图以供电局为原点,正东方向为x轴的正半轴,正北方向为y轴的正半轴,长度单位为km,则这个村庄的坐标是15,20,它附近只有一条线路通过,其方程为3x-4y-10=0.问:要完成任务,至少需要多长的电线这实际上是一个求点到直线的距离问题,那么什么是点到直线的距离,如何求村庄到线路的距离呢2. 在学生思考讨论的基础上,教师收集学生各种的求法,得常见求法如下:1设过点P15,20与l:3x-4y-10=0垂直的直线为m,易求m的方程为4x+3y-120=0.由解得即m与l的交点由两点间的距离公式,得故要完成任务,至少需要9km长的电线.2设直线l:3x-4y-10=0与x轴的交点为Q,则Q,0.在直线l上任取一点M0,-,易让向量=,与向量n=3,-4垂直.设向量与向量n的夹角为θ,点P到直线l的距离为d,由向量的数量积的定义易知3设过点P15,20与l:3x-4y-10=0垂直的直线为m,易求m的方程为4x-15+3y-20=0.设垂足为P o x o,y o,则4x o-15+3y o-20=0,①又因为点P o在l上,所以3x o-4y o-10=0,即3x o-4y o=10,而3×15-4×20-10=3×15-4×20-3x o+4y o=-3x o-15+4y o-20,即3x o-15-4y o-20=45.②把等式①和等式②两边相加,得25x o-152+y o-202=452,∴x o-152+y o-202=,3. 教师展现学生们的求法,师生共同点评各种求法,得出:求垂线与直线的交点坐标,再用两点间的距离公式使问题得解,想法虽自然,但计算量较大;不求垂足的坐标,设出垂足的坐标代入直线方程,进而通过等式变形,利用两点间的距离公式求得结果,想法既巧妙,又简单明了.二、建立模型设坐标平面上如图24-1,有点Px1,y1和直线l:Ax+By+C=0A,B不全为0.我们来寻求点到直线l距离的算法.作直线m通过点Px1,y1,并且与直线l垂直,设垂足为P0x0,y0.容易求得直线m的方程为Bx-x1-Ay-y1=0.由此得Bx0-x1-Ay0-y1=0.①由点P0在直线l上,可知Ax0+By0+C=0,即C=-Ax0-By0.所以Ax1+By1+C=Ax1+By1-Ax0-By0,即Ax1-x0+By1-y0=Ax1+By1+C.②把等式①和②两边平方后相加,整理可得A2+B2x1-x02+y1-y02=Ax1+By1+C2,即x1-x02+y1-y02=容易看出,等式左边即为点Px1,y1到直线l距离的平方.由此我们可以得到点Px1,y1到直线l的距离d的计算公式:归纳求点Px1,y1到直线l:Ax+By+C=0的距离的计算步骤如下:1给出点的坐标x1和y1赋值.2给A,B,C赋值.3计算注意:1在求点到直线的距离时,直线方程要化为一般式.2当直线与x轴或y轴平行时,公式也成立,但此时求距离一般不用公式.三、解释应用例题1. 求点P-1,2到下列直线的距离:l1:2x+y=5,l2:3x=2.注意:规范解题格式.2. 求两平行直线l1:Ax+By+C1=0,l2:Ax+By+C2=0,C1≠C2之间的距离.分析:求两条平行线间的距离,就是在其中一条直线上任取一点,求该点到另一条直线的距离.解:在l1上任取一点Px1,y1,则Ax1+By=-C1,点P到l2的距离d=3. 建立适当的直角坐标系,证明:等腰三角形底边上任一点到两腰的距离之和等于一腰上的高.解:以等腰三角形底边所在的直线为x轴,底边上的高所在的直线为y轴,建立直角坐标系如图24-2.不妨设底边|AB|=2a,高|OC|=b,则直线AC:即bx-ay+ab=0;直线BC:,即bx+ay-ab=0,∴点Ba,0.在线段AB上任取一点Dm,0,则-a≤m≤a.∴d1+d2=,即等腰三角形底边上任一点到两腰的距离之和等于一腰上的高.练习1. 求下列点到直线的距离.100,0,l1:3x+4y-5=0.2A1,0,l2:x+y-=0.3B1,2,l3:3x+y=0.4C-2,3,l4:y-7=0.2. 求两条平行直线2x+3y-8=0和2x+3y+18=0之间的距离.3. 1求过点A-1,2,且与原点的距离为的直线方程.2若点Px,y在直线x+y-4=0上,O为原点,求OP的最小值.3若△ABC的三顶点分别为A7,8,B0,4,C2,-4,求△ABC的面积.4求点P0,1关于直线x-2y+1=0的对称点的坐标.5求直线2x+11y+16=0关于点P0,1对称的直线方程.四、拓展延伸1. 点到直线的距离公式应用非常广泛,你能举例说明它在解决实际问题中的应用吗2. 点到直线的距离公式的推导方法有很多,对学有余力的同学可探索其他推导方法,下面介绍两种常见的推导方法.1如图,已知点P0x0,y0,直线l:Ax+By+C=0,求点P0到直线l的距离.不妨设A≠0,B≠0,这时l和x轴、y轴都相交.过点P0作直线l的垂线,交l于Q.令|P0Q|=d,过P0作x轴的平行线交l于Rx1,y0,作y轴的平行线交l于Sx0,y2.由Ax1+By0+C=0,Ax0+By2+C=0得易证A=0或B=0,公式也成立.2点到直线的距离公式也可用向量的知识求得,此法更能体现出代数与几何的联系,比其他方法更简单,直观,易懂.求法如下:①如图24-4,证明向量n=A,B与直线l垂直.不妨设A≠0,直线l与x轴的交点是Q-,0.如果P1x1,y1是直线l上不同于Q的点,则Ax1+By1+C=0.∴Ax1++By1-0=0,即A,B·x1+,y1-0=0,∴向量n=A,B,与向量=x1+,y1-0垂直,即向量n与直线l垂直.②求点P0到直线l的距离d.由数量积的定义,如果向量与向量n的夹角为θ,那么易证当A=0或B=0时,公式也成立.点评这节课首先通过实例阐述了点到直线距离的产生背景,并通过学生思考讨论,归纳和概括出了求点到直线的距离的常用方法,然后按照由特殊到一般的思路,找出了推导点到直线距离公式的方法.这种安排充分体现了新课程标准的教学理念,符合新课程标准精神.例题与练习的设计由浅入深,完整,全面.解释应用深有新意,有深度.拓展延伸活跃了学生思维,培养了学生发现问题、研究问题、解决问题的能力.总之,这篇案例较好地体现了高中数学教育发展的一丝新理念.。

高中必修3数学算法教案

高中必修3数学算法教案

高中必修3数学算法教案一、教学目标:1.了解算法的概念和基本特性2.掌握常见的算法设计方法3.熟练应用算法解决实际问题二、教学重点:1.算法的基本概念和特性2.算法设计方法的应用3.实际问题的算法解决三、教学难点:1.算法设计方法的灵活运用2.实际问题的算法转化和解决四、教学内容:1.算法的概念和基本特性- 什么是算法?算法的特点有哪些?- 算法的分类及常见算法的应用领域2.算法设计方法- 穷举法:逐个测试所有可能的解决方案- 分治法:将问题分解为更小的子问题解决- 动态规划法:将问题划分为相互重叠的子问题解决- 贪心法:每一步都选择当前最优的解决方案3.实际问题的算法解决- 使用穷举法解决排列组合问题- 使用分治法解决最大子数组和问题- 使用动态规划法解决背包问题- 使用贪心法解决背包问题五、教学方法:1.讲授相结合:通过教师讲解和演示应用实例,使学生理解算法的概念和基本特性2.练习与讨论:设置小组讨论和课堂练习,提高学生算法设计和解决问题的能力3.案例分析:通过实际问题的算法案例分析,让学生了解算法在实际问题中的应用六、教学过程:1.引入:通过一个生活中的实际问题引入算法的概念和基本特性2.讲解:介绍算法的概念、基本特性和常见的算法设计方法3.实例演示:通过一些实际问题的算法解决实例演示,让学生了解算法的应用4.练习训练:设置练习题目,让学生熟练掌握算法设计方法和解决问题的能力5.总结反思:总结本节课的学习内容,让学生反思算法的重要性和实际应用七、教学资料:1.教材PPT2.练习题目3.实例演示案例八、作业布置:1.完成练习题目2.对一道实际问题进行算法设计和解决九、教学效果评估:1.课堂参与情况2.练习题目的完成情况3.实际问题的算法设计和解决情况十、教学反思:1.对学生的学习情况进行总结和反思2.根据学生的反馈和表现进行下节课的调整和优化十一、教学延伸:1.扩展更多的算法设计方法和应用案例2.进行竞赛和挑战,提高学生算法设计的能力十二、教学课件:(以上为教案范本,具体实施时可根据实际情况进行调整)。

最新人教版普通高中课程标准实验教科书必修3《算法案例——辗转相除法和更相减损术》说课稿

最新人教版普通高中课程标准实验教科书必修3《算法案例——辗转相除法和更相减损术》说课稿

课题:算法案例——辗转相除法和更相减损术教材:人教版普通高中课程标准实验教科书必修3第一章第1.3节1、教材分析与传统教学内容相比,《算法初步》为新增内容,算法是计算机科学的重要基础,算法思想已经渗透到社会的方方面面,算法思想也逐渐成为每个现代人应具有的数学素养。

算法思想即体现了时代的特点,也是中国古代数学灿烂的历史和巨大的贡献在新层次上的复兴。

本节内容是探究古代算法案例――辗转相除法和更相减损术,经历设计算法解决问题的全过程,体会算法在解决问题中的重要作用,体会算法的基本思想,提高逻辑思维能力,发展有条理的思考和数学表达能力,巩固算法三种描述性语言(自然语言、图形语言和程序语言),提高学生分析和解决问题的能力。

2、教学目标分析:(1)知识目标:①理解辗转相除法和更相减损术求两个正数的最大公约数的原理;②能用写算法步骤、画流程图和编程序表达辗转相除法;说明:在这里,理解案例中的新的知识是理解算法的必要的前提,但重要的是理解案例中的算法核心思想,而不是强调对案例中新知识的记忆和灵活运用。

(2)能力目标:①培养学生把具体问题抽象转化为算法语言的能力;②培养学生自主探索和合作学习的能力。

(3)情感目标:①使学生进一步了解从具体到一般思想方法。

②体会中国古代数学对世界数学的巨大贡献,培养爱国思想和学习数学的积极性。

3、教学重点与难点分析:(1)教学重点:能用写算法步骤、画流程图和编程序表达辗转相除法及更相减损术。

(体会算法解决问题的全过程)(2)教学难点:用不同逻辑结构的程序框图表达算法;4、教学方法与手段(1)、教法:阅读指导,以问题为载体,有引导的对话,让学生经历知识的形成过程和发展过程,有利于学生活动的充分展开。

(2)、学法:以观察、讨论、思考、分析、动手操作、自主探索、合作学习多种形式相结合,引导学生多角度、多层面认识事物,突破教学难点。

5、教学过程设计分析:辅助工具:ppt课件知识准备:带余除法6、评价分析:(1)、指导思想:①新知识与旧知识相结合的原则;②掌握知识与发展智力、能力相统一的原则;③教师的主导作用与学生的主体作用相结合的原则。

山东省高中数学《1.3 算法案例》教案1 新人教A版必修3

山东省高中数学《1.3 算法案例》教案1 新人教A版必修3

1.3 算法案例整体设计教学分析在学生学习了算法的初步知识,理解了表示算法的算法步骤、程序框图和程序三种不同方式以后,再结合典型算法案例,让学生经历设计算法解决问题的全过程,体验算法在解决问题中的重要作用,体会算法的基本思想,提高逻辑思维能力,发展有条理地思考与数学表达能力.三维目标1.理解算法案例的算法步骤和程序框图.2.引导学生得出自己设计的算法程序.3. 体会算法的基本思想,提高逻辑思维能力,发展有条理地思考与数学表达能力.重点难点教学重点:引导学生得出自己设计的算法步骤、程序框图和算法程序.教学难点:体会算法的基本思想,提高逻辑思维能力,发展有条理地思考与数学表达能力. 课时安排3课时教学过程第1课时案例1 辗转相除法与更相减损术导入新课思路1(情境导入)大家喜欢打乒乓球吧,由于东、西方文化及身体条件的不同,西方人喜欢横握拍打球,东方人喜欢直握拍打球,对于同一个问题,东、西方人处理问题方式是有所不同的.在小学,我们学过求两个正整数的最大公约数的方法:先用两个数公有的质因数连续去除,一直除到所得的商是互质数为止,然后把所有的除数连乘起来. 当两个数公有的质因数较大时(如 8 251 与6 105),使用上述方法求最大公约数就比较困难.下面我们介绍两种不同的算法——辗转相除法与更相减损术,由此可以体会东、西方文化的差异.思路2(直接导入)前面我们学习了算法步骤、程序框图和算法语句.今天我们将通过辗转相除法与更相减损术来进一步体会算法的思想.推进新课新知探究提出问题(1)怎样用短除法求最大公约数?(2)怎样用穷举法(也叫枚举法)求最大公约数?(3)怎样用辗转相除法求最大公约数?(4)怎样用更相减损术求最大公约数?讨论结果:(1)短除法求两个正整数的最大公约数的步骤:先用两个数公有的质因数连续去除,一直除到所得的商是两个互质数为止,然后把所有的除数连乘起来.(2)穷举法(也叫枚举法)穷举法求两个正整数的最大公约数的解题步骤:从两个数中较小数开始由大到小列举,直到找到公约数立即中断列举,得到的公约数便是最大公约数.(3)辗转相除法辗转相除法求两个数的最大公约数,其算法步骤可以描述如下:第一步,给定两个正整数m,n.第二步,求余数r:计算m除以n,将所得余数存放到变量r中.第三步,更新被除数和余数:m=n,n=r.第四步,判断余数r是否为0.若余数为0,则输出结果;否则转向第二步继续循环执行.如此循环,直到得到结果为止. 这种算法是由欧几里得在公元前300年左右首先提出的,因而又叫欧几里得算法.(4)更相减损术我国早期也有解决求最大公约数问题的算法,就是更相减损术. 《九章算术》是中国古代的数学专著,其中的“更相减损术”也可以用来求两个数的最大公约数,即“可半者半之,不可半者,副置分母、子之数,以少减多,更相减损,求其等也.以等数约之.”翻译为现代语言如下:第一步,任意给定两个正整数,判断它们是否都是偶数,若是,用2约简;若不是,执行第二步.第二步,以较大的数减去较小的数,接着把所得的差与较小的数比较,并以大数减小数,继续这个操作,直到所得的数相等为止,则这个数(等数)或这个数与约简的数的乘积就是所求的最大公约数.应用示例例1 用辗转相除法求8 251与6 105的最大公约数,写出算法分析,画出程序框图,写出算法程序.解:用两数中较大的数除以较小的数,求得商和余数:8 251=6 105×1+2 146.由此可得,6 105与2 146的公约数也是8 251与6 105的公约数,反过来,8 251与6 105的公约数也是6 105与2 146的公约数,所以它们的最大公约数相等.对6 105与2 146重复上述步骤:6 105=2 146×2+1 813.同理,2 146与1 813的最大公约数也是6 105与2 146的最大公约数.继续重复上述步骤:2 146=1 813×1+333,1 813=333×5+148,333=148×2+37,148=37×4.最后的除数37是148和37的最大公约数,也就是8 251与6 105的最大公约数.这就是辗转相除法.由除法的性质可以知道,对于任意两个正整数,上述除法步骤总可以在有限步之后完成,从而总可以用辗转相除法求出两个正整数的最大公约数.算法分析:从上面的例子可以看出,辗转相除法中包含重复操作的步骤,因此可以用循环结构来构造算法.算法步骤如下:第一步,给定两个正整数m,n.第二步,计算m除以n所得的余数为r.第三步,m=n,n=r.第四步,若r=0,则m,n的最大公约数等于m;否则,返回第二步.程序框图如下图:程序:INPUT m,nDOr=m MOD nm=nn=rLOOP UNTIL r=0PRINT mEND点评:从教学实践看,有些学生不能理解算法中的转化过程,例如:求8 251与6 105的最大公约数,为什么可以转化为求6 105与2 146的公约数.因为8 251=6 105×1+2 146,可以化为8 251-6 105×1=2 164,所以公约数能够整除等式两边的数,即6 105与2 146的公约数也是8 251与6 105的公约数.变式训练你能用当型循环结构构造算法,求两个正整数的最大公约数吗?试画出程序框图和程序.解:当型循环结构的程序框图如下图:程序:INPUT m,nr=1WHILE r>0r=m MOD nm=nn=rWENDPRINT mEND例2 用更相减损术求98与63的最大公约数.解:由于63不是偶数,把98和63以大数减小数,并辗转相减,如下图所示.98-63=3563-35=2835-28=728-7=2121-7=1414-7=7所以,98和63的最大公约数等于7.点评:更相减损术与辗转相除法的比较:尽管两种算法分别来源于东、西方古代数学名著,但是二者的算理却是相似的,有异曲同工之妙.主要区别在于辗转相除法进行的是除法运算,即辗转相除;而更相减损术进行的是减法运算,即辗转相减,但是实质都是一个不断的递归过程.变式训练用辗转相除法或者更相减损术求三个数324,243,135的最大公约数.解:324=243×1+81,243=81×3+0,则324与243的最大公约数为81.又135=81×1+54,81=54×1+27,54=27×2+0,则 81 与 135的最大公约数为27.所以,三个数324、243、135的最大公约数为27.另法:324-243=81,243-81=162,162-81=81,则324与243的最大公约数为81.135-81=54,81-54=27,54-27=27,则81与135的最大公约数为27.所以,三个数324、243.135的最大公约数为27.例3 (1)用辗转相除法求123和48的最大公约数.(2)用更相减损术求80和36的最大公约数.解:(1)辗转相除法求最大公约数的过程如下:123=2×48+27,48=1×27+21,27=1×21+6,21=3×6+3,6=2×3+0,最后6能被3整除,得123和48的最大公约数为3.(2)我们将80作为大数,36作为小数,因为80和36都是偶数,要除公因数2.80÷2=40,36÷2=18.40和18都是偶数,要除公因数2.40÷2=20,18÷2=9.下面来求20与9的最大公约数,20-9=11,11-9=2,9-2=7,7-2=5,5-2=3,3-2=1,2-1=1,可得80和36的最大公约数为22×1=4.点评:对比两种方法控制好算法的结束,辗转相除法是到达余数为0,更相减损术是到达减数和差相等.变式训练分别用辗转相除法和更相减损术求1 734,816的最大公约数.解:辗转相除法:1 734=816×2+102,816=102×8(余0),∴1 734与816的最大公约数是102.更相减损术:因为两数皆为偶数,首先除以2得到867,408,再求867与408的最大公约数.867-408=459,459-408=51,408-51=357,357-51=306,306-51=255,255-51=204,204-51=153,153-51=102,102-51=51.∴1 734与816的最大公约数是51×2=102.利用更相减损术可另解:1 734-816=918,918-816=102,816-102=714,714-102=612,612-102=510,510-102=408,408-102=306,306-102=204,204-102=102.∴1 734与816的最大公约数是102.知能训练求319,377,116的最大公约数.解:377=319×1+58,319=58×5+29,58=29×2.∴377与319的最大公约数为29,再求29与116的最大公约数.116=29×4.∴29与116的最大公约数为29.∴377,319,116的最大公约数为29.拓展提升试写出利用更相减损术求两个正整数的最大公约数的程序.解:更相减损术程序:INPUT “m,n=”;m,nWHILE m<>nIF m>n THENm=m-nELSEm=n-mEND IFWENDPRINT mEND课堂小结(1)用辗转相除法求最大公约数.(2)用更相减损术求最大公约数.思想方法:递归思想.作业分别用辗转相除法和更相减损术求261,319的最大公约数.分析:本题主要考查辗转相除法和更相减损术及其应用.使用辗转相除法可依据m=nq+r,反复执行,直到r=0为止;用更相减损术就是根据m-n=r,反复执行,直到n=r为止.解:辗转相除法:319=261×1+58,261=58×4+29,58=29×2.∴319与261的最大公约数是29.更相减损术:319-261=58,261-58=203,203-58=145,145-58=87,87-58=29,58-29=29,∴319与261的最大公约数是29.设计感想数学不仅是一门科学,也是一种文化,本节的引入从东、西方文化的不同开始,逐步向学生渗透数学文化.从知识方面主要学习用两种方法求两个正整数的最大公约数,从思想方法方面,主要学习递归思想.本节设置精彩例题,不仅让学生学到知识,而且让学生进一步体会算法的思想,培养学生的爱国主义情操.。

2021年高中数学1.3算法案例教案新人教A版必修3

2021年高中数学1.3算法案例教案新人教A版必修3

2021年高中数学1.3算法案例教案新人教A版必修3一、教学目标:1.理解辗转相除法与更相减损术中蕴含的数学原理,并能根据这些原理进行算法分析.2.能根据算法语句与程序框图的知识设计完整的程序框图并写出算法程序.二、教学重点与难点:重点:理解辗转相除法与更相减损术求最大公约数的方法.难点:把辗转相除法与更相减损术的方法转换成程序框图与程序语言.三、教学过程与方法:学生自主学习:认真自学课本34-37内容.1.辗转相除法,就是对于给定的两个正整数,用较大的数除以较小的数,若余数不为零,则将余数和较小的数构成新的一对数,继续上面的除法,直到大数被小数除尽为止,这时的较小的数即为原来两个数的最大公约数.2.更相减损术,就是对于给定的两个正整数,用较大的数减去较小的数,然后将差和较小的数构成新的一对数,继续上面的减法,直到差和较小的数相等,此时相等的两数即为原来两个数的最大公约数.合作探究(一):辗转相除法问题1:12与16的最大公约数是多少?18与90的最大公约数是多少?你是怎样得到的?(1)枚举法:(2)短除法:问题2:对于8251与6105这两个数,由于其公有的质因数较大,利用上述方法求最大公约数就比较困难.注意到8251=6105×1+2146,那么8251与6105这两个数的公约数和6105与2146的公约数有什么关系?又6105=2146×2+1813,同理,6105与2146的公约数和2146与1813的公约数相等.重复上述操作,你能得到8251与6105这两个数的最大公约数吗?问题3:上述求两个正整数的最大公约数的方法称为辗转相除法或欧几里得算法.一般地,用辗转相除法求两个正整数m,n的最大公约数,可以用什么逻辑结构来构造算法?其算法步骤如何设计?第一步,给定两个正整数m,n(m>n).第二步,第三步,第四步,问题4:该算法的程序框图如何表示?问题5:该程序框图对应的程序如何表述?问题6:如果用当型循环结构构造算法,则用辗转相除法求两个正整数m,n的最大公约数的程序框图和程序分别如何表示?练习:用辗转相除法求下列两数的最大公约数:(1)225,135:;(2)98,196;(3)72,168;(4)153,119.合作探究(二):更相减损术《九章算术》是中国古代的数学专著,是世界数学史上的瑰宝.设两个正整数m>n,若m-n=k,则m与n的最大公约数和n与k的最大公约数相等.反复利用这个原理,可求得98与63的最大公约数为多少?练习:用更相减损术求两个正数84与72的最大公约数,并用辗转相除法验证.合作探究(三):辗转相除法与更相减损术的区别(1)都是求最大公约数的方法,计算上辗转相除法以为主,更相减损术以为主,计算次数上辗转相除法计算次数相对,特别当两个数字大小区别较大时计算次数的区别较明显.(2)从结果体现形式来看,辗转相除法体现结果是则得到,而更相减损术则以相等而得到课堂测试:1.用辗转相除法求80和36的最大公约数,并用更相减损术检验所得结果.2.求三个数175、100、75的最大公约数.随堂练习:1.用辗转相除法计算60与48的最大公约数时,需要做的除法次数是( )A.1 B.2C.3 D.42.用辗转相除法求294和84的最大公约数时,需要做除法的次数是( )A.1 B.2C.3 D.43.求378和90的最大公约数.4.求三个数324,243,108的最大公约数.本节小结:1.辗转相除法.2.更相减损术.3.辗转相除法与更相减损术.本节作业:课本P48页习题1.3 A组T1.。

高中数学新课程----算法案例教案

高中数学新课程----算法案例教案

高中数学新课程 ---- 算法事例一.【课标要求】经过阅读中国古代数学中的算法事例,领会中国古代数学对世界数学发展的贡献。

二.【命题走向】算法是高中数学新课程中的新增内容,本讲的重点是几种重要的算法事例思想,复习时重算法的思想轻算法和程序的结构。

展望 2020 年高考队本讲的观察是:以选择题或填空题的形式出现,分值在 5 分左右,观察的热门是算法实例和传统数学知识的联合题目三.【重点精讲】1.求最大条约数(1)短除法求两个正整数的最大条约数的步骤:先用两个数公有的质因数连续去除,向来除到所得的商是两个互质数为止,而后把全部的除数连乘起来(2)穷举法(也叫列举法)穷举法求两个正整数的最大条约数的解题步骤:从两个数中较小数开始由大到小列举,直到找到条约数立刻中止列举,获得的条约数即是最大条约数(3)展转相除法展转相除法求两个数的最大条约数,其算法能够描绘以下:①输入两个正整数m和 n;②求余数 r :计算 m除以 n,将所得余数寄存到变量r 中;③更新被除数和余数:m=n, n=r ;④判断余数 r 能否为 0。

若余数为 0,则输出结果;不然转向第②步持续循环履行这样循环,直到获得结果为止。

(4)更相减损术我国初期也有解决求最大条约数问题的算法,就是更相减损术。

在《九章算术》中记录了更相减损术求最大条约数的步骤:可半者半之,不行半者,副置分母 ? 子之数,以少减多,更相减损,求其等也,以等数约之步骤:Ⅰ.随意给出两个正数;判断它们能否都是偶数。

假如,用2约简;若不是,履行第二步。

Ⅱ.以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数。

持续这操作,直到所得的数相等为止,则这个数(等数)就是所求的最大条约数。

2.秦九韶算法秦九韶算法的一般规则:秦九韶算法合用一般的多项式 f(x)=a n x n+a n-1 x n-1 + .+a 1x+a0的求值问题。

用秦九韶算法求一般多项式f(x)=a n nn-1x n-1 10 0 时的函数值,可把n 次多项x +a + .+a x+a 当 x=x式的求值问题转变成求n 个一次多项式的值的问题,即求v0=a nv1=a n x+a n-1v2=v1x+a n-2v3=v2x+a n-3..v n=v n-1x+a0察看秦九韶算法的数学模型,计算 v k时要用到 v k-1的值,若令 v0=a n。

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

高中数学新课程----算法案例一.【课标要求】通过阅读中国古代数学中的算法案例,体会中国古代数学对世界数学发展的贡献。

二.【命题走向】算法是高中数学新课程中的新增内容,本讲的重点是几种重要的算法案例思想,复习时重算法的思想轻算法和程序的构造。

预测2020年高考队本讲的考察是:以选择题或填空题的形式出现,分值在5分左右,考察的热点是算法实例和传统数学知识的结合题目三.【要点精讲】1.求最大公约数(1)短除法求两个正整数的最大公约数的步骤:先用两个数公有的质因数连续去除,一直除到所得的商是两个互质数为止,然后把所有的除数连乘起来(2)穷举法(也叫枚举法)穷举法求两个正整数的最大公约数的解题步骤:从两个数中较小数开始由大到小列举,直到找到公约数立即中断列举,得到的公约数便是最大公约数(3)辗转相除法辗转相除法求两个数的最大公约数,其算法可以描述如下:①输入两个正整数m和n;②求余数r:计算m除以n,将所得余数存放到变量r中;③更新被除数和余数:m=n,n=r;④判断余数r是否为0。

若余数为0,则输出结果;否则转向第②步继续循环执行如此循环,直到得到结果为止。

(4)更相减损术我国早期也有解决求最大公约数问题的算法,就是更相减损术。

在《九章算术》中记载了更相减损术求最大公约数的步骤:可半者半之,不可半者,副置分母•子之数,以少减多,更相减损,求其等也,以等数约之步骤:Ⅰ.任意给出两个正数;判断它们是否都是偶数。

若是,用2约简;若不是,执行第二步。

Ⅱ.以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数。

继续这操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数。

2.秦九韶算法秦九韶算法的一般规则:秦九韶算法适用一般的多项式f(x)=a n x n +a n-1x n-1+….+a 1x+a 0的求值问题。

用秦九韶算法求一般多项式f(x)=a n x n +a n-1x n-1+….+a 1x+a 0当x=x 0时的函数值,可把n 次多项式的求值问题转化成求n 个一次多项式的值的问题,即求v 0=a nv 1=a n x+a n -1 v 2=v 1x+a n -2 v 3=v 2x+a n -3 …….. v n =v n -1x+a 0观察秦九韶算法的数学模型,计算v k 时要用到v k -1的值,若令v 0=a n 。

我们可以得到下面的递推公式: v 0=a nv k =v k -1+a n -k (k=1,2,…n)这是一个在秦九韶算法中反复执行的步骤,可以用循环结构来实现3.进位制 (1)概念进位制是一种记数方式,用有限的数字在不同的位置表示不同的数值。

可使用数字符号的个数称为基数,基数为n ,即可称n 进位制,简称n 进制。

现在最常用的是十进制,通常使用10个阿拉伯数字0—9进行记数。

对于任何一个数,我们可以用不同的进位制来表示。

比如:十进数57,可以用二进制表示为111001,也可以用八进制表示为71、用十六进制表示为39,它们所代表的数值都是一样的。

一般地,若k 是一个大于一的整数,那么以k 为基数的k 进制可以表示为:110()110...(0,0,...,,)n n k n n a a a a a k a a a k --<<≤<,而表示各种进位制数一般在数字右下脚加注来表示,如111001(2)表示二进制数,34(5)表示5进制数。

(2)进位制间的转换 关于进位制的转换,教科书上以十进制和二进制之间的转换为例讲解,并推广到十进制和其它进制之间的转换。

这样做的原因是,计算机是以二进制的形式进行存储和计算数据的,而一般我们传输给计算机的数据是十进制数据,因此计算机必须先将十进制数转换为二进制数,再处理,显然运算后首次得到的结果为二进制数,同时计算机又把运算结果由二进制数转换成十进制数输出。

非十进制数转换为十进制数比较简单,只要计算下面的式子值即可:111011.........)(.....a k a k a k a k a a a a n n n n n n +⨯++⨯+⨯=---第一步:从左到右依次取出k 进制数)(.....011k a a a a n n -各位上的数字,乘以相应的k 的幂,k 的幂从n 开始取值,每次递减1,递减到0,即00111,,,.........,k a k a k a k a n n n n ⨯⨯⨯⨯--;第二步:把所得到的乘积加起来,所得的结果就是相应的十进制数。

十进制数转换成非十进制数把十进制数转换为二进制数,教科书上提供了“除2取余法”,我们可以类比得到十进制数转换成k 进制数的算法“除k 取余法”。

非十进制之间的转换一个自然的想法是利用十进制作为桥梁。

教科书上提供了一个二进制数据与16进制数据之间的互化的方法,也就是先有二进制数转化为十进制数,再由十进制数转化成为16进制数。

四.【典例解析】题型1:求最大公约数 例1.(1)用辗转相除法求123和48的最大公约数? (2)用更相减损来求80和36的最大公约数?解析:(1)辗转相除法求最大公约数的过程如下:(建立带余除式)123=2×48+27 48=1×27+21 27=1×21+621=3×6+36=2×3+0最后6能被3整除,得123和48的最大公约数为3。

(2)分析:我们将80作为大数,36作为小数,执行更相减损术来求两数的最大公约数。

执行结束的准则是减数和差相等更相减损术:因为80和36都是偶数,要去公因数2。

80÷2=40,36÷2=18;40和18都是偶数,要去公因数2。

40÷2=20,18÷2=9下面来求20与9的最大公约数,20-9=1111-9=29-2=77-2=55-2=33-2=12-1=1可得80和36的最大公约数为22×1=4。

点评:对比两种方法控制好算法的结束,辗转相除法是到达余数为0,更相减损术是到达减数和差相等。

例2.设计一个算法,求出840与1764的最大公因数。

解析:我们已经学习过了对自然数的素因数分解的方法,下面的算法就是在此基础上设计的。

解题思路如下:首先对两个数进行素因数分解:840=23×3×5×7,1764=22×32×72,其次,确定两个数的公共素因数:2,3,7。

接着确定公共素因数的指数:对于公共素因数2,840中为23,1764中为22,应取较少的一个22,同理可得下面的因数为3和7。

算法步骤:第一步:将840进行素数分解23×3×5×7;第二步:将1764进行素数分解22×32×72;第三步:确定它们的公共素因数:2,3,7;第四步:确定公共素因数2,3,7的指数分别是:2,1,1;第五步:最大公因数为22×31×71=84。

点评:质数是除1以外只能被1和本身整除的正整数,它应该是无限多个,但是目前没有一个规律来确定所有的质数题型2:秦九韶算法 例3.(2009福州模拟)如果执行右面的程序框图,那么输出的S = ( )A .22B .46C .94D .190 答案C 2、(2009浙江卷理)某程序框图如图所示,该程序运行后输出的k 的值是 () A .4B .5C .6D .7【解析】对于0,1,1k s k ==∴=,而对于1,3,2k s k ==∴=,则2,38,3k s k ==+∴=,后面是113,382,4k s k ==++∴=,不符合条件时输出的4k =. 答案A 3、(2009天津卷理)阅读上(右)图的程序框图,则输出的S=()A26B35C40D57【解析】当1=i 时,2,2==S T ;当2=i 时,7,5==S T ;当3=i时,15,8==S T ;当4=i 时,26,11==S T ;当5=i 时, 40,14==S T ;当6=i 时,57,17==S T ,故选择C 。

答案 C4(2009安徽卷文)程序框图上(右)(即算法流程图)如图所示,其输入结果是_______。

【解析】根据流程图可得a 的取值依次为1、3、7、15、31、63……答案127点评:秦九韶算法适用一般的多项式f(x)=a n x n+a n-1x n-1+….+a1x+a0的求值问题。

直接法乘法运算的次数最多可到达2)1(nn,加法最多n次。

秦九韶算法通过转化把乘法运算的次数减少到最多n次,加法最多n次。

例4.已知多项式函数f(x)=2x5-5x4-4x3+3x2-6x+7,求当x=5时的函数的值。

解析:把多项式变形为:f(x)=2x5-5x4-4x3+3x2-6x+7=((((2x-5)x-4)x+3)x-6)x+7计算的过程可以列表表示为:多项式x系数2-5-43-67运算运算所得的值1251055402670+变形后x的"系数" 2 5211085342677*5最后的系数2677即为所求的值算法过程:v0=2v1=2×5-5=5v2=5×5-4=21v3=21×5+3=108v4=108×5-6=534v5=534×5+7=2677点评:如果多项式函数中有缺项的话,要以系数为0的项补齐后再计算。

题型3:进位值例5.把十进制数89化为三进制数,并写出程序语句.解析:具体的计算方法如下:89=3×29+229=3×9+29=3×3+03=3×1+01=3×0+1所以:89(10)=1011001(3)。

点评:根据三进制数满三进一的原则,可以用3连续去除89及其所的得的商,然后按倒序的先后顺序取出余数组成数据即可。

例6.将8进制数314706(8)化为十进制数,并编写出一个实现算法的程序。

解析:314706(8)=3×85+1×84+4×83+7×82+0×Array 81+6×80=104902。

所以,化为十进制数是104902。

点评:利用把k进制数转化为十进制数的一般方法就可以把8进制数314706(8)化为十进制数,然后根据该算法,利用GET函数,应用循环结构可以设计程序。

五.【思维总结】1.求最大公约数(1)辗转相除法程序框图与程序语句程序:INPUT“m,n=”;m,nDOr=mMODnm=nn=rLOOPUNTILr=0PRINTEND(2)更相减损术更相减损术程序:INPUT“请输入两个不相等的正整数”;a,bi=0WHILEaMOD2=0ANDbMOD2=0a=a/2b=b/2i=i+1WENDDOIFb<aTHENt=aa=bb=tENDIFc=a-ba=bb=cLOOPUNTILa=bPRINTa^iENDf(x)=a5x5+a4x4+a3x3+a2x2+a1x+a0首先,让我们以5次多项式一步步地进行改写:f(x)=(a5x4+a4x3+a3x2+a2x+a1)x+a0=((a5x3+a4x2+a3x+a2)x+a1)x+a0=(((a5x2+a4x+a3)x+a2)x+a1)x+a0=((((a5x+a4)x+a3)x+a2)x+a1)x+a0上面的分层计算。

相关文档
最新文档