高中数学第一章第三节算法案例课件新课标人教A版必修3

上传人:工**** 文档编号:570210858 上传时间:2024-08-02 格式:PPT 页数:18 大小:835KB
返回 下载 相关 举报
高中数学第一章第三节算法案例课件新课标人教A版必修3_第1页
第1页 / 共18页
高中数学第一章第三节算法案例课件新课标人教A版必修3_第2页
第2页 / 共18页
高中数学第一章第三节算法案例课件新课标人教A版必修3_第3页
第3页 / 共18页
高中数学第一章第三节算法案例课件新课标人教A版必修3_第4页
第4页 / 共18页
高中数学第一章第三节算法案例课件新课标人教A版必修3_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《高中数学第一章第三节算法案例课件新课标人教A版必修3》由会员分享,可在线阅读,更多相关《高中数学第一章第三节算法案例课件新课标人教A版必修3(18页珍藏版)》请在金锄头文库上搜索。

1、1.3 1.3 算法案例算法案例授课教师:马婧莹授课教师:马婧莹 在商代的甲骨文中,已经有了一、二、三、四、在商代的甲骨文中,已经有了一、二、三、四、在商代的甲骨文中,已经有了一、二、三、四、在商代的甲骨文中,已经有了一、二、三、四、五、六、七、八、九、十、百、千、万的数字,而五、六、七、八、九、十、百、千、万的数字,而五、六、七、八、九、十、百、千、万的数字,而五、六、七、八、九、十、百、千、万的数字,而有了这些记数字,就可以记录十万以内的任何自然有了这些记数字,就可以记录十万以内的任何自然有了这些记数字,就可以记录十万以内的任何自然有了这些记数字,就可以记录十万以内的任何自然数了数了数了数

2、了 算筹算筹 按照中国古代的筹算规则,算筹记数的表示方法为:按照中国古代的筹算规则,算筹记数的表示方法为:个位用纵式,十位用横式,百位再用纵式,千位再用横式,个位用纵式,十位用横式,百位再用纵式,千位再用横式,万位再用纵式万位再用纵式这样从右到左,纵横相间,以此类推,这样从右到左,纵横相间,以此类推,就可以用算筹表示出任意大的自然数了就可以用算筹表示出任意大的自然数了. . “满十进一满十进一”就是十进制,就是十进制,半斤半斤= =八两?八两? 一小时有六十分用的是六十进制一小时有六十分用的是六十进制一个星期有七天用的是七进制一个星期有七天用的是七进制一年有十二个月用的是十二进制一年有十二个月

3、用的是十二进制电子计算机用的是二进制电子计算机用的是二进制“满满k进一进一”就是就是k进制进制(k叫做基数)叫做基数). 进位制是人们为了计数和运算方便而约定的记数系统进位制是人们为了计数和运算方便而约定的记数系统.“满二进一满二进一”就是二进制,就是二进制, 十进制使用十进制使用09十个数字十个数字,计数时计数时,几个数字排成一行几个数字排成一行,从右起从右起,第一个是个位第一个是个位,个位上的数字是几个位上的数字是几,就表示几个一就表示几个一;第二位是十位第二位是十位,十十位上的数字是几位上的数字是几,就表示几个十就表示几个十;接着依次是百位接着依次是百位,千位千位,万位万位 例如例如,十

4、进制数十进制数3721表示有:表示有:1个个1,2个个10, 7个百即个百即7个个10的平方,的平方,3个千即个千即3个个10的立方的立方十进制十进制 与十进制类似与十进制类似, ,其他的进位制也可以按照位置原则计数其他的进位制也可以按照位置原则计数. .由由于每一种进位制的基数不同于每一种进位制的基数不同, ,所用的数字个数也不同所用的数字个数也不同. .如二进制如二进制用用0 0和和1 1两个数字两个数字, ,七进制用七进制用0 06 6七个数字七个数字. . 一般地,若一般地,若k是一个大于是一个大于1的整数,那么的整数,那么以以k为基数的为基数的k进制数进制数可以表示为一串数字连写在一

5、起的形式:可以表示为一串数字连写在一起的形式:如如:10212 (3) 193 2376 (8) 为了区分不同的进位制为了区分不同的进位制, ,常在数的右下角标明基数常在数的右下角标明基数, ,十进制数一般不标注基数十进制数一般不标注基数. .练习练习1:判断下列数表达是否正确?:判断下列数表达是否正确?(1) 12(2)(2) 061(7)(3) 291(8)1、如何将、如何将k进制数转化为十进制数?进制数转化为十进制数?我们再回忆一下刚才的例子:我们再回忆一下刚才的例子: 其他进位制的数也可以表示成不同位上的数字与基数其他进位制的数也可以表示成不同位上的数字与基数的幂的乘积之和的形式,如:

6、的幂的乘积之和的形式,如:110011(2)=783+382+481+280即:即:125+1 24+ 023+0 22 +121+1 207342(8)=练习练习2:把下列数化为十进制数:把下列数化为十进制数(1) 1011010(2)(2) 10212(3)(3) 2376(8)练习练习3: (1)110011(2)、324(5)、123(4)、55(6)四个数中最大的一个是四个数中最大的一个是_ (2)已知)已知k进制的数进制的数132(k)与十进制的数相与十进制的数相 等,那么等,那么k等于等于_=90=104=12784324(5)这种算法叫做这种算法叫做除除2 2取余法取余法, ,

7、还可以用下面的除法算式表示还可以用下面的除法算式表示: :11 2 5144 2220注意:注意:1.1.最后一步商为最后一步商为0 0,2.2.将上式各步所得的余数将上式各步所得的余数从下到上排列从下到上排列,得到:,得到: 89=101100189=1011001(2 2)例例 把把89化为二进制数化为二进制数解:解:5 2 212(2(2(2(221)1)0)0)189126025124123022021120所以:所以:89=1011001(2)2(2(2(2321)0)0)12(2(242220)0)12(2523 2200)12624 23002089244122 2110所以所以

8、892(2(2(2(2 2 1)1)0)0)12 2、如何将十进制数转化为二进制数?、如何将十进制数转化为二进制数?、如何将十进制数转化为二进制数?、如何将十进制数转化为二进制数?5 52 22 22 21 12 20 01 10 0余数余数11112222444489892 22 22 22 20 01 11 10 01 12 2 101 2 01例:把例:把8989化为五进制数化为五进制数. .3 3 3 3、十进制转化为其它进制、十进制转化为其它进制、十进制转化为其它进制、十进制转化为其它进制解:解:根据根据除除k k取余法取余法以以5 5作为除数,相应的除法算式为:作为除数,相应的除法

9、算式为:所以,所以,89=32489=324(5 5)89895 517175 53 35 50 04 42 23 3余数余数练习练习4:完成下列进位制之间的转化:完成下列进位制之间的转化:(1)137= (6);(2)2008= (2)= (8);(3) 1231(5)= (7).373034511111011000362五进制五进制五进制五进制十进制十进制十进制十进制七进制七进制七进制七进制1进位制是一种记数方式,用有限的数字在不同的位进位制是一种记数方式,用有限的数字在不同的位置表示不同的数值。可使用数字符号的个数称为基数,置表示不同的数值。可使用数字符号的个数称为基数,基数为基数为k,

10、即可称,即可称k进位制,简称进位制,简称k进制。进制。k进制需要使用进制需要使用k个数字个数字.2十进制与十进制与k进制之间转化的方法进制之间转化的方法: 先把这个先把这个k进制数写成用各位上的数字与进制数写成用各位上的数字与k的幂的乘的幂的乘积之和的形式,再按照十进制数的运算规则计算出结果积之和的形式,再按照十进制数的运算规则计算出结果.小结小结3十进制数转化为十进制数转化为k进制数的方法:(除进制数的方法:(除k取余法)取余法) 用用k连续去除该十进制数或所得的商,直到商为零连续去除该十进制数或所得的商,直到商为零为止,然后把每次所得的余数倒着排成一个数,就是为止,然后把每次所得的余数倒着

11、排成一个数,就是相应的相应的k进制数进制数. 设计一个程序,把设计一个程序,把k k进制化为十进进制化为十进制制. .INPUT“a,k,n=”;a,k,nb=0i=1T=aMOD10DO b=b+t*k(i-1) a=a10 t=aMOD10 i=i+1LOOP UNTIL inPRINT bEND设计一个算法设计一个算法设计一个算法设计一个算法, ,把把把把K K 进制数进制数进制数进制数A(A(共有共有共有共有N N位位位位) )化为十进制数化为十进制数化为十进制数化为十进制数? 算法分析:算法分析: 从前面的例题的计算过程可以看出,计算从前面的例题的计算过程可以看出,计算k k进制数进

12、制数a a的右数第的右数第i i位数字位数字a ai i 与与k ki-1i-1的乘积的乘积a ai i k ki-1i-1,再将其累加,这是一个重复操作的步骤,再将其累加,这是一个重复操作的步骤. .所以所以, ,可以用循环结构来构造算法可以用循环结构来构造算法. .算法步骤如下算法步骤如下:第一步第一步,输入输入a,k和和n的值的值.第二步第二步,将将b的值初始化为的值初始化为0,i的值初始化为的值初始化为1.第三步第三步,b=b+ ai ki-1,i=i+1.第四步第四步,判断判断in是否成立是否成立.若是若是,则执行第五步则执行第五步;否则否则,返回第三步返回第三步.第五步第五步,输出

13、输出b的值的值.输输出出b结束结束开始开始输出输出a,k,ni=1b=0把把a的右数第的右数第i位数字赋给位数字赋给ti=i+1b=b+tki-1否否in?是是算法步骤如下算法步骤如下:第一步第一步,输入输入a,k和和n的值的值.第二步第二步,将将b的值初始化为的值初始化为0,i的值的值 初始化为初始化为1.第三步第三步,b=b+ ai ki-1,i=i+1.第四步第四步,判断判断in是否成立是否成立.若是若是,则则执行第五步执行第五步;否则否则,返回第三步返回第三步.第五步第五步,输出输出b的值的值.设计一个程序,实现设计一个程序,实现“除除k取余法取余法”.算法步骤:算法步骤:第一步,给定

14、十进制正整数第一步,给定十进制正整数a和转化后的数的基数和转化后的数的基数k;第二步,求出第二步,求出a 除以除以k 所得的商所得的商q ,余数余数r;第三步,把得到的余数依次从右到左排列第三步,把得到的余数依次从右到左排列.第四步,若第四步,若q0,则则a=q,返回第二步返回第二步;否则否则,输出全部余数输出全部余数r排排 列得到的列得到的k进制数进制数.开始开始输入输入a,k 求求a除以除以k的商的商q 求求a除以除以k的余数的余数r把得到的余数依次从右到左排列把得到的余数依次从右到左排列a=qq=0?输出全部余数输出全部余数r排列得到的排列得到的k进制数进制数结束结束是是否否程序:程序:INPUT “a,k=”;a,kb=0i=0DO q=ak r=a MOD k b=b+r*10i i=i+1 a=qLOOP UNTIL q=0PRINT bEND

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号