知识讲解_算法案例_基础
- 格式:doc
- 大小:244.00 KB
- 文档页数:8
《生活中的算法-查找与排》教学设计方案(第一课时)一、教学目标1. 理解查找和排序算法的基本原理。
2. 掌握使用条件语句进行查找和排序的方法。
3. 能够应用所学知识解决生活中的实际问题。
二、教学重难点1. 教学重点:学习使用条件语句进行查找和排序。
2. 教学难点:在实际生活中运用所学算法解决实际问题。
三、教学准备1. 准备教学PPT和相关视频素材。
2. 准备计算机和相关软件,如Excel、Scratch等。
3. 准备一些实际问题,供学生实践。
4. 安排小组讨论和展示的时间。
5. 准备一些练习题,供学生巩固所学知识。
四、教学过程:本节课我们主要通过以下四个环节来完成教学任务:1. 引入环节首先,我会通过一个简单的例子来引入查找和排序的概念。
例如,假设我们有一个班级的名单,我们需要找到某个学生的名字,或者将某个学生排在前面。
这个过程就是查找和排序。
通过这个例子,可以让学生们对算法有一个初步的认识,并且能够激发他们的学习兴趣。
2. 探究环节接下来,我会给学生们一些具体的任务,让他们自己动手实践查找和排序算法的实现。
我会给出一些常见的查找和排序算法,例如线性查找、二分查找、冒泡排序、插入排序等,并给出一个简单的代码示例。
学生们可以通过阅读代码、调试代码来理解这些算法的实现过程,并且能够自己动手编写代码进行实践。
在探究过程中,我会引导学生们思考一些问题,例如:* 这些算法的优缺点是什么?* 如何优化这些算法以提高效率?* 查找和排序算法在哪些情况下适用?通过这些问题,可以让学生们更好地理解算法的本质,并且能够培养他们的思考能力和解决问题的能力。
3. 实践环节在学生们掌握了基本的查找和排序算法之后,我会给他们一些实际生活中的问题,例如:* 如何快速查找手机号码簿中的某个电话号码?* 如何将购物清单按照价格从低到高进行排序?* 如何快速定位网站中的某个关键字?学生们需要自己动手编写代码来实现这些算法,并且能够在实践中应用所学知识。
基本算法语句【学习目标】1、正确理解输入语句、输出语句、赋值语句的结构.2、会写一些简单的程序.3、掌握赋值语句中的“=”号的作用.4、正确理解条件语句和循环语句的概念,并掌握其结构的区别与联系.5、会应用条件语句和循环语句编写程序.【要点梳理】要点一、输入语句在程序中的INPUT语句就是输入语句.这个语句的一般格式是:其中,“提示内容”一般是提示用户输入什么样的信息.功能:可对程序中的变量赋值.要点诠释:①“提示内容”提示用户输入什么样的信息,必须加双引号,提示内容“原原本本”的在计算机屏幕上显示,提示内容与变量之间要用分号隔开;②变量是指程序在运行时其值是可以变化的量;③一个语句可以给多个变量赋值,中间用“,”分隔,但最后的变量的后面不需要;④要求输入的数据必须是常量,而不能是函数、变量或表达式;⑤无计算功能.例如,输入一个学生数学,语文,英语三门课的成绩,可以写成:INPUT “数学,语文,英语”;a,b,c要点二、输出语句在程序中的PRINT语句是输出语句.它的一般格式是:同输入语句一样,表达式前也可以有“提示内容”.功能:可输出表达式的值,计算.要点诠释:①“提示内容”提示用户输出什么样的信息,提示内容必须加双引号,提示内容要用分号和表达式分开;②表达式是指程序要输出的数据,可以是变量、计算公式或系统信息;③一个语句可以输出多个表达式,不同的表达式之间可用“,”分隔;④有计算功能,可以输出常量、变量或表达式的值以及字符.要点三、赋值语句用来表明赋给某一个变量一个具体的确定值的语句.它的一般格式是:赋值语句中的“=”叫做赋值号.功能:先计算出赋值号右边表达式的值,然后把这个值赋给赋值号左边的变量,使该变量的值等于表达式的值.要点诠释:①赋值号的左右两边不能对换,如“A=B”“B=A”的含义运行结果是不同的;②格式中右边“表达式”可以是一个数据、常量和算式,如果“表达式”是一个算式时,赋值语句的作用是先计算出“=”右边表达式的值,然后将该值赋给“=”左边的变量;③赋值号左边只能是变量名字,而不能是表达式,如:2=X 是错误的;④不能利用赋值语句进行代数式的演算(如化简、因式分解等);⑤对于一个变量可以多次赋值;⑥有计算功能;⑦赋值号与数学中的等号的意义是不同的.赋值号左边的变量如果原来没有值,则执行赋值语句后,获得一个值,如果已有值,则执行该语句后,以赋值号右边表达式的值代替该变量的原值,即将“原值”冲掉.要点四、条件语句算法中的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法语句.它的一般格式是:(IF-THEN-ELSE 格式)当计算机执行上述语句时,首先对IF 后的条件进行判断,如果条件符合,就执行THEN 后的语句1,否则执行ELSE 后的语句2.其对应的程序框图为:(如上右图)在某些情况下,也可以只使用IF-THEN 语句:(即IF-THEN 格式)计算机执行这种形式的条件语句时,也是首先对IF 后的条件进行判断,如果条件符合,就执行THEN 后的语句,如果条件不符合,则直接结束该条件语句,转而执行其他语句.其对应的程序框图为:(如上右图)要点诠释:条件语句的作用:在程序执行过程中,根据判断是否满足约定的条件而决定是否需要转换到何处去.需要计算机按条件进行分析、比较、判断,并按判断后的不同情况进行不同的处理.IF 条件 THEN 语句END IF要点五、循环语句算法中的循环结构是由循环语句来实现的.对应于程序框图中的两种循环结构,一般程序设计语言中也有当型(WHILE 型)和直到型(UNTIL 型)两种语句结构.即WHILE 语句和UNTIL 语句.1.WHILE 语句的一般格式是:其中循环体是由计算机反复执行的一组语句构成的.WHLIE 后面的“条件”是用于控制计算机执行循环体或跳出循环体的.当计算机遇到WHILE 语句时,先判断条件的真假,如果条件符合,就执行WHILE 与WEND 之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止.这时,计算机将不执行循环体,直接跳到WEND 语句后,接着执行WEND 之后的语句.因此,当型循环有时也称为“前测试型”循环.其对应的程序结构框图为:(如上右图)2.UNTIL 语句的一般格式是:其对应的程序结构框图为:(如上右图)直到型循环又称为“后测试型”循环,从UNTIL 型循环结构分析,计算机执行该语句时,先执行一次循环体,然后进行条件的判断,如果条件不满足,继续返回执行循环体,然后再进行条件的判断,这个过程反复进行,直到某一次条件满足时,不再执行循环体,跳到LOOP UNTIL 语句后执行其他语句,是先执行循环体后进行条件判断的循环语句.要点诠释当型循环与直到型循环的区别①当型循环是先判断后执行,直到型循环是先执行后判断;②当型循环用WHILE 语句,直到型循环用UNTIL 语句;③对同一算法来说,当型循环和直到型循环的条件互为反条件.【典型例题】类型一:输入语句、输出语句和赋值语句例1.判断下列输入、输出语句是否正确?为什么?(1)输入语句INPUT a ;b ;cWHILE 条件 循环体 WENDDO 循环体 LOOP UNTIL 条件(2)输入语句INPUT x=3(3)输出语句PRINT A=4(4)输出语句PRINT 20,3*2【解析】(1)错,变量之应用“,”隔开;(2)错,INPUT语句中只能是变量而不能是表达;(3)错,PRINT语句中不能用赋值号“=”;(4)对,PRINT语句可以输出常量、变量、表达的值。
第1篇一、背景随着信息技术的飞速发展,算法已经成为现代社会不可或缺的一部分。
在计算机科学、数据科学、人工智能等领域,算法的应用越来越广泛。
为了培养学生的逻辑思维能力、问题解决能力和创新意识,将算法融入教学实践显得尤为重要。
本文以某高校计算机科学与技术专业为例,介绍一种算法的教学实践案例。
二、教学目标1. 理解算法的基本概念和特性。
2. 掌握常用算法的设计与实现方法。
3. 能够运用算法解决实际问题。
4. 培养学生的团队合作精神和创新能力。
三、教学内容1. 算法的基本概念:算法的定义、特性、复杂度等。
2. 常用算法:排序算法(冒泡排序、选择排序、插入排序等)、查找算法(二分查找、顺序查找等)、图算法(广度优先搜索、深度优先搜索等)。
3. 算法设计方法:分治法、动态规划、贪心算法等。
4. 算法实现:使用Python语言实现各种算法。
四、教学实践案例1. 案例背景某高校计算机科学与技术专业开设了一门《数据结构与算法》课程,课程内容涉及算法的基本概念、常用算法、算法设计方法以及算法实现等。
为了提高学生的实践能力,教师决定采用案例教学法,通过一个具体的案例让学生在实践中学习算法。
2. 案例描述案例:某公司需要开发一个图书管理系统,实现以下功能:(1)图书信息录入:包括书名、作者、出版社、出版日期、价格等信息。
(2)图书查询:根据书名、作者、出版社等信息进行查询。
(3)图书借阅:实现图书的借阅、归还功能。
(4)图书统计:统计图书的借阅次数、库存数量等信息。
3. 教学过程(1)引入案例教师首先向学生介绍案例背景,让学生了解图书管理系统的功能和需求。
(2)分析问题教师引导学生分析案例中的问题,明确需要解决的问题,如图书信息录入、查询、借阅、统计等。
(3)设计算法教师带领学生一起设计解决案例中问题的算法,如图书信息录入可以使用链表实现,图书查询可以使用二分查找算法,图书借阅可以使用栈实现,图书统计可以使用哈希表实现。
算法案例——辗转相除法算法案例——辗转相除法育才中学潘敏⼀、教材分析选⾃苏教版普通⾼中课程标准实验教科书必修3第⼀章第4节。
1、地位作⽤:与传统教学内容相⽐,《算法初步》为新增内容,算法是计算机科学的重要基础,从⽇常⽣活的电⼦邮件发送到繁忙的交通管理,从与⼈们⽣产、⽣活息息相关的天⽓预报到没有硝烟的战争模拟等等都离不开计算机算法。
算法思想已经渗透到社会的⽅⽅⾯⾯,算法思想也逐渐成为每个现代⼈应具有的数学素养。
在以前的学习中,虽然没有出现算法这个名词,但实际上在数学教学中已经渗透了⼤量的算法思想,如四则运算的过程,求解⽅程的步骤,以及将要学习的数列求和等等,完成这些⼯作都需要⼀系列程序化的步骤,这就是算法思想。
本节内容是探究古代算法案例――辗转相除法,巩固算法三种描述性语⾔(⾃然语⾔、流程图和伪代码),提⾼学⽣分析和解决问题的能⼒。
2、教学⽬标:(1)知识⽬标:①理解辗转相除法原理;②能⽤⾃然语⾔、流程图和伪代码表达辗转相除法;③能应⽤迭代算法思想。
(2)能⼒⽬标:①培养学⽣把具体问题抽象转化为算法语⾔的能⼒;②培养学⽣⾃主探索和合作学习的能⼒。
(3)情感⽬标:①使学⽣进⼀步了解从具体到抽象,抽象到具体的辨证思想⽅法,对学⽣进⾏辨证唯物主义教育;②创设和谐融洽的教学氛围和阶梯形问题,使学⽣在活动中获得成功感,从⽽培养学⽣热爱数学、积极学习数学、应⽤数学的热情。
3、教学重点与难点:(1)教学重点:①理解辗转相除法原理;②能⽤⾃然语⾔、流程图和伪代码表达辗转相除法。
(2)教学难点:①理解和区分两种循环结构表达辗转相除法;②能应⽤迭代算法思想。
⼆、教法学法1、教法:以问题为载体,有引导的对话,让学⽣经历知识的形成过程和发展过程,从⽽突出教学重点,并采⽤多媒体教学,增加课堂容量,有利于学⽣活动的充分展开。
2、学法:以观察、讨论、思考、分析、动⼿操作、⾃主探索、合作学习多种形式相结合,引导学⽣多⾓度、多层⾯认识事物,突破教学难点。
第1篇一、背景随着信息技术的飞速发展,算法在各个领域的应用越来越广泛。
为了培养学生的算法思维和编程能力,提高学生的综合素质,我国高校纷纷开设了算法课程。
然而,传统的算法教学方式往往过于理论化,学生难以将理论知识与实践相结合。
为了解决这一问题,本文提出一种基于项目驱动的算法实践教学设计案例。
二、教学目标1. 让学生掌握基本的算法设计方法,包括分治法、贪心法、动态规划法等。
2. 培养学生的编程能力,使学生能够熟练运用编程语言实现算法。
3. 提高学生的团队合作能力,使学生能够与团队成员有效沟通,共同解决问题。
4. 增强学生的创新意识,使学生能够针对实际问题提出新的解决方案。
三、教学内容1. 基本算法设计方法:分治法、贪心法、动态规划法等。
2. 编程语言:Python、Java、C++等。
3. 项目驱动:设计并实现一个具有实际应用背景的算法项目。
四、教学过程1. 项目选题与需求分析教师根据学生的专业背景和兴趣,选取一个具有实际应用背景的算法项目。
例如,设计一个在线图书馆系统,实现图书借阅、归还、查询等功能。
教师引导学生分析项目需求,明确项目目标。
2. 算法设计与实现(1)分治法:以图书借阅功能为例,将图书按照类别进行划分,然后对每个类别分别进行借阅操作。
(2)贪心法:以图书归还功能为例,根据图书归还时间排序,优先归还最早归还的图书。
(3)动态规划法:以图书查询功能为例,采用动态规划法实现关键词搜索,提高查询效率。
(4)编程实现:教师引导学生使用Python、Java、C++等编程语言实现算法,并进行调试和优化。
3. 团队合作与沟通教师将学生分成若干小组,每组负责项目的一个模块。
小组成员之间进行沟通,明确各自的任务和责任。
教师定期组织小组会议,了解项目进展,解决团队协作中的问题。
4. 项目测试与评价教师组织学生进行项目测试,确保项目功能的完整性和稳定性。
同时,对学生进行评价,包括编程能力、算法设计能力、团队合作能力等方面。
算法案例【学习目标】1.理解辗转相除法与更相减损术中蕴含的数学原理,并能根据这些原理进行算法分析;2.基本能根据算法语句与程序框图的知识设计完整的程序框图并写出算法程序;3.了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实质;4.了解各种进位制与十进制之间转换的规律,会利用各种进位制与十进制之间的联系进行各种进位制之间的转换.【要点梳理】要点一、辗转相除法也叫欧几里德算法,它是由欧几里德在公元前300年左右首先提出的.利用辗转相除法求最大公约数的步骤如下:第一步:用较大的数m除以较小的数n得到一个商q0和一个余数r0;第二步:若r0=0,则n为m,n的最大公约数;若r0≠0,则用除数n除以余数r0得到一个商q1和一个余数r1;第三步:若r1=0,则r0为m,n的最大公约数;若r1≠0,则用除数r0除以余数r1得到一个商q2和一个余数r2;……依次计算直至r n=0,此时所得到的r n-1即为所求的最大公约数.用辗转相除法求最大公约数的程序框图为:程序:INPUT “m=”;m INPUT “n=”;n IF m<n THEN x=m m=n n=x END IF r=m MOD n WHILE r<>0 r=m MOD n m=n n=r WEND PRINT n END要点诠释:辗转相除法的基本步骤是用较大的数除以较小的数,考虑到算法中的赋值语句可以对同一变量多次赋值,我们可以把较大的数用变量m 表示,把较小的数用变量n 表示,这样式子)0(n r r q n m <≤+⋅=就是一个反复执行的步骤,因此可以用循环结构实现算法. 要点二、更相减损术我国早期也有解决求最大公约数问题的算法,就是更相减损术.更相减损术求最大公约数的步骤如下:可半者半之,不可半者,副置分母、子之数,以少减多,更相减损,求其等也.以等数约之.翻译出来为:第一步:任意给出两个正整数;判断它们是否都是偶数.若是,用2约简;若不是,执行第二步. 第二步:以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数.继续这个操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数.理论依据:由r b a r b a +=→=-,得b a ,与r b ,有相同的公约数 更相减损术一般算法:第一步,输入两个正整数)(,b a b a >;第二步,如果b a ≠,则执行3S ,否则转到5S ; 第三步,将b a -的值赋予r ;第四步,若r b >,则把b 赋予a ,把r 赋予b ,否则把r 赋予a ,重新执行2S ; 第五步,输出最大公约数b . 程序:INPUT “a=”,a INPUT “b=”,b WHILE a<>b IF a>=b a=a-b;ELSE b=b-a WEND ENDPRINT b 或者INPUT “请输入两个不相等的正整数”;a ,b i=0WHILE a MOD 2=0 AND b MOD 2=0 a=a/2 b=b/2 i=i+1 WEND DOIF b<a THEN t=a a=b b=t END IF c=a -b a=b b=cLOOP UNTIL a=b PRINT a^i END要点诠释:用辗转相除法步骤较少,而更相减损术虽然有些步骤较长,但运算简单. 要点三、秦九韶计算多项式的方法12121012312102312101210()()(())((()))n n n n n n n n n n n n n n n n n n n f x a x a x a x a x a a x a x a x a x a a x a x a x a x a a x a x a x a x a --------------=+++++=+++++=+++++==+++++令12(1)((()))k n n n n k n k v a x a x a x a x a -----=+++++,则有01nk k n kv a v v x a --=⎧⎨=+⎩,其中n k ,2,1=.这样,我们便可由0v 依次求出n v v v ,,21;1323212101,,,a x v v a x v v a x v v a x v v n n n n n +=+=+=+=----要点诠释:显然,用秦九韶算法求n 次多项式的值时只需要做n 次乘法和n 次加法运算 要点四、进位制进位制是一种记数方式,用有限的数字在不同的位置表示不同的数值.可使用数字符号的个数称为基数,基数为n ,即可称n 进位制,简称n 进制.现在最常用的是十进制,通常使用10个阿拉伯数字0-9进行记数.对于任何一个数,我们可以用不同的进位制来表示.比如:十进数57,可以用二进制表示为111001,也可以用八进制表示为71、用十六进制表示为39,它们所代表的数值都是一样的.表示各种进位制数一般在数字右下角加注来表示,如111001(2)表示二进制数,34(5)表示5进制数. 1.k 进制转换为十进制的方法:012211)(0121a k a k a k a k a a a a a a a n n n n k n n +⨯+⨯++⨯+⨯=--- ,把k 进制数a 转化为十进制数b 的算法程序为:INPUT “ a,k,n=”;a,k,n i=1 b=0WHILE i<=n t=GET a[i] b=b+t*k^(i-1) i=i+1 WEND PRINT b END2.十进制转化为k 进制数b 的步骤为:第一步,将给定的十进制整数除以基数k ,余数便是等值的k 进制的最低位; 第二步,将上一步的商再除以基数k ,余数便是等值的k 进制数的次低位;第三步,重复第二步,直到最后所得的商等于0为止,各次所得的余数,便是k 进制各位的数,最后一次余数是最高位,即除k 取余法.要点诠释:1、在k 进制中,具有k 个数字符号.如二进制有0,1两个数字.2、在k 进制中,由低位向高位是按“逢k 进一”的规则进行计数.3、非k 进制数之间的转化一般应先转化成十进制,再将这个十进制数转化为另一种进制的数,有的也可以相互转化.【典型例题】类型一:辗转相除法与更相减损术例1.用辗转相除法求下列两数的最大公约数,并且用更相减损术检验你的结果: (1)80,36;(2)294,84. 【答案】(1)4(2)42【解析】(1)80=36×2+8,36=8×4+4.8=4×2+0.即80与36的最大公约数是4.验证:80-36=44,44-36=8.36-8=28.28-8=20.20-8=12.12-8=4.8-4=4.∴80与36的最大公约数为4.(2)294=84×3+42,84=42×2.即294与84的最大公约数是42.验证:∵294与84都是偶数可同时除以2,即取147与42的最大公约数后再乘2.147-42=105.105-42=63.63-42=21.42-21=21.∴294与84的最大公约数为21×2=42.【总结升华】比较辗转相除法与更相减损术的区别(1)都是求最大公约数的方法,计算上辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少,特别当两个数字大小区别较大时计算次数的区别较明显;(2)从结果体现形式来看,辗转相除法体现结果是以相除余数为0则得到,而更相减损术则以减数与差相等而得到.由该题可以看出,辗转相除法得最大公约数的步骤较少.对比两种方法控制好算法的结束,辗转相除法是到达余数为0,更相减损术是到达减数和差相等.举一反三:【变式1】(1)用辗转相除法求123和48的最大公约数.(2)分别用辗转相除法和更相减损术求105与357的最大公约数.【答案】21【解析】(1)123=2×48+2748=1×27+2127=1×21+621=3×6+36=2×3+0最后6能被3整除,得123和48的最大公约数为3.(2)辗转相除法:357=105×3+42,105=42×2+21,42=21×2.故105与357的最大公约数为21.更相减损术:357-105=252,252-105=147,147-105=42,105-42=63,63-42=21,42-21=21.故105与357的最大公约数为21.例2.求三个数:168,54,264的最大公约数.【思路点拨】运用更相减损术或辗转相除法,先求168与54的最大公约数a ,再求a 与264的最大公约数.【答案】6 【解析】采用更相减损术先求168与54的最大公约数.(168,54)→(114,54)→(60,54)→(6,54)→(6,48)→(6,42)→(6,36)→(6,30)→(6,24)→(6,18)→(6,12)→(6,6) 故168与54的最大公约数为6.采用辗转相除法求6和264的最大公约数.因为264=44×6+0,所以6为264与6的最大公约数,也是三个数的最大公约数.【总结升华】求最大公约数通常有两种方法:一是辗转相除法;二是更相减损术,对于3个数的最大公约数的求法,则是先求其中两个数的最大公约数m ,再求m 与第三个数的最大公约数.同样可推广到求3个数以上的数的最大公约数.举一反三:【变式1】求三个数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,∴81是324和243的最大公约数. 又135-81=54, 81-54=27, 54-27=27,∴27是81与135的最大公约数.∴三个数324,243,135的最大公约数为27.类型二:秦九韶算法 例3.已知一个一元五次多项式为5432()52 3.5 2.6 1.70.8f x x x x x x =++-+-,用秦九韶算法求这个多项式当x=5时的值.【思路点拨】可根据秦九韶算法原理,先将所给的多项式进行改写,然后由内向外逐层计算即可. 【答案】17255.2 【解析】5432()52 3.5 2.6 1.70.8f x x x x x x =++-+- ((((52) 3.5) 2.6) 1.7)0.8x x x x x =++-+-,v 1=5×5+2=27,v 2=27×5+3.5=138.5, v 3=138.5×5-2.6=689.9, v 4=689.9×5+1.7=3451.2, v 5=3451.2×5-0.8=17255.2.所以,当x=5时,多项式的值等于17255.2.【总结升华】利用秦九韶算法计算多项式的值的关键是能正确地将所给多项式改写,然后由内向外逐层计算,由于下一次计算需用到上一次的结果,故应认真、细心,确保中间结果的准确性. 举一反三:【变式1】用秦九韶算法求多项式764()85321f x x x x x =++++当x=2时的值. 【答案】1397 【解析】765432()85030021((((((85)0)3)0)0)2)1f x x x x x x x x x x x x x x x =++⋅++⋅+⋅++=+++++++.v 0=8,v 1=8×2+5=21, v 2=21×2 4-0=42, v 3=42×2 4-3=87, v 4=87×2+0=174, v 5=174×2+0=348, v 6=348×2+2=698, v 7=698×2+1=1397,所以,当x=2时,多项式的值为1397.【变式2】用秦九韶算法计算多项式65432()654327f x x x x x x x =++++++在x=0.4时的值时,需做加法和乘法的次数和是( )A .10B .9C .12D .8 【答案】 C【解析】 ()(((((65)4)3)2)1)7f x x x x x x x =++++++.∴加法6次,乘法6次, ∴6+6=12(次),故选C .类型三:进位制例4.把87化为二进制数. 【答案】1010111(2)【解析】 因为87=2×43+1,43=2×21+1,21=2×10+1,10=2×5+0,5=2×2+1,2=2×1+0.1=2×0+1.所以87=2×(2×(2×(2×(2×2+1)+0)+1)+1)+1 =2×(2×(2×(2×(22+1)+0)+1)+1)+1 =…=1×26+0×25+1×24+0×23+1×22+1×2+1 =1010111(2). 【总结升华】(1)本题的算法叫除2取余法.上述解法可以推广到把十进制数化为k 进制数的算法,称为除k 取余法.(2)本题还可以用下面的除法算式表示如图: 把上式各步所得的余数从下到上排列,得87=1010111(2).举一反三: 【变式】(1)将十进制数2l 转化为五进制数. (2)把十进制数48转化为二进制数.【解析】(1)用除5取余法,可得∴21=41(5).(2) 将十进制数48转化为二进制数的除法算式如图所示. 把上式中各步所得的余数从下到上排列,得到48=110000(2).【总结升华】在解答过程中常会出现把上图中各步所得的余数从上到下排列的错误,应注意避免. 例5.把下列各数化为十进制数.(1)20121(3);(2)20121(4). 【答案】(1)178 (2)537【解析】 (1)20121(3)=2×34+0×33+1×32+2×3+1=178. (2)20121(4)=2×44+0×43+1×42+2×4+1=537. 【总结升华】k 进制数转化为十进制数的方法是把k 进制数表示为各位上的数字与k 的幂的乘积之和,从右边起,第i 位数字对应k 的幂为1i k-.举一反三:【变式1】在十进制中,01232004410010010210=⨯+⨯+⨯+⨯,那么在五进制中数码2 004折合成十进制为( )A .29B .254C .602D .2 004 【答案】B【解析】0123200445050525254=⨯+⨯+⨯+⨯=,故选B .【变式2】把十进制数48转化为二进制数. 【答案】110000(2)【解析】 将十进制数48转化为二进制数的除法算式如图所示. 把上式中各步所得的余数从下到上排列,得到48=110000(2).【总结升华】在解答过程中常会出现把图中各步所得的余数从上到下排列的错误,应注意避免.。