- 0
- 0
- 约2.79千字
- 约 5页
- 2026-03-10 发布于广西
- 举报
PAGE
PAGE1
高精度乘法
教学目标
1.知识与技能
学会高精度乘法的基本使用
学会利用高精度乘法解决各种常见问题.
2.过程与方法:
学习流程:讲授——模仿——练习
通过课堂练习,巩固课堂内容。
教学重点、难点
【重点】
高精度乘法竖式计算的规律
高精度乘法算法原理
【难点】
高精度乘法灵活使用
压位运算
课时安排
课时安排:120分钟
四、上课准备
课程相关ppt、白板、白板笔、积分卡
课前检查电脑、投影仪、网络是否有故障,及时修复。
五、教学活动
活动时长
教学活动
注意事项
课前准备
老师准备学生电脑,保证电脑能正常使用;打开投影仪,打开上课课件,以最饱满的热情迎接学生!
提前10分钟准备
开场白
欢迎各位同学回到吉码信息学课堂。
引入
前面我们学习了高精度的加减法,今天我们继续学习高精度的乘法。至于除法,因为算法描述复杂,代码很长,效率较低,在考试中几乎未出现过。所以,留作同学们课后自己去研究和开发,课堂上就不讲了,其实高精度除法的原理和竖式原理一样,只不过运算顺序从高位开始,就需要逆序转存了。言归正传,我们还是先学乘法。
学习内容(1)
ppt5一个“高精度”乘法竖式计算的手工模拟
在白板上演示,注意进位的处理演示清楚。
【提问】答案的位数能否由两个乘数的位数决定?
【回答】大致可以,但不能完全确定。但我们能够确定答案位数的最大值。
我们设两个乘数为a和b,b是一个n位数,a是一个m位数。
b<=99...999(即n个9)<10^n
所以a*b<a*10^n(乘以10的n次方,相当于在后面添n个0,位数增加n)
于是我们可以确定a*b的位数不超过a和b的位数之和。
ppt6观察高精度乘法的规律
【提问】看图,我们把最后一行看做答案,能否找到ai*bj最终累加到答案的什么位置?
留一定的时间给学生观察,期间可以给予一定的提示。比如a1*b1计算后,累加到c数组的哪个位置?
【回答】c的i+j-1的位置。
那么,如果a是一个m位数,b是一个n位数,那么最后一次乘法累加到c的m+n-1位置。能否说答案的位数是m+n-1位?
【回答】不能。因为最高位可能会有进位,那么最高位进位以后就是m+n位。
【追问】会不会变为m+n+1或更多?
【回答】不会。因为两个个位数相乘,最大是81,进位最大是8.不会进两个数位。
两个高精度数相乘,正常情况下,最高位进位是8。但有一种情况下例外,那就是进行高精度数乘以普通整数的计算时,ppt6的bi可以不是一位数,它可以是任意的整数,只要计算过程不溢出即可,这时候,如果bi=10000,那么结果的最高位进位就可能会非常多。举个例子:
用竖式计算111*123,把前面的数字当成高精度数,后面的123当成普通精度数字,把123看做一位数进行计算。
1 1 1
*(123)
136(进位13)5(进位13)3(进位12)
最高位进位13,答案是13653。这个答案其实和把123当成三位数计算是一致的。但这时候,最高位进位就是两位了,答案位数为3+1-1+(进位的2位)=5位。
其实这种计算方式就是“压位”。高精度*普通整数,是“压位”的一种特殊形式,把普通整数压成“一位数”了。我们再看看ppt7,再看一个压位运算的例子。
ppt8竖式计算乘法
言归正传,上面我们把竖式计算乘法的规律研究了一下,而且推广为了高精度数*普通整数的情况,验证了竖式计算的广泛适用。最终得到的规律是:
c[i+j-1]+=a[i]*b[j]+x+c[i+j-1];//x为上一次计算的进位。
【提问】为什么上面的式子,左边用+=符号,而不直接用等号赋值。
【回答】因为乘法计算要经过很多轮乘法,每轮结果都要累加的。这里的“一轮”乘法,代表a的每一个数位与b的一个数位bi都做相乘的运算,结果累加到c中。
ppt9大整数乘法
进位处理:我们处理进位可以把进位直接累加到c数组对应的位置上,也可以每一轮运算时用专门的变量存储进位来处理。二种方式各有其方便之处。如果是高精度*普通精度,我们必须用专门的变量存储进位,这样能实现原地存储结果。后面再举例说明。
ppt10、11,逐行讲解程序。
重点和难点:进位变量的初始化处理:“每一轮运算的开头”进行初始化。因为在“一轮”运算内,进位的变量是可以复用的。但“不同轮次”之间的进位不能重复使用。
“一轮”计算的结果最高位进位一定要及时处理,否则信息丢失。
c[i+a[0]-1+1]=jw;//没有压位;
如果有压位,则需要保证压位后计算不发生溢出,其他照旧。
学习内容(2)
您可能关注的文档
- C++编程《第001课 初识C++》教学设计.docx
- C++编程《第001课 初识C++》教学课件.pptx
- C++编程《第002课 变量和数据类型(1)》教学课件.pptx
- C++编程《第002课 变量和数据类型(1)》教学设计.docx
- C++编程《第003课 变量和数据类型(2)》教学设计.docx
- C++编程《第003课 变量和数据类型(2)》教学课件.pptx
- C++编程《第004课 选择与分支(1)》教学课件.pptx
- C++编程《第004课 选择与分支(1)》教学设计.docx
- C++编程《第005课 选择与分支(2)》教学课件.pptx
- C++编程《第005课 选择与分支(2)》教学设计.docx
- 散文题型03 理解分析词句(题型专练)(全国通用)(解析版)-2026年高考语文二轮复习讲练.docx
- 考前押题10 阅读理解之应用文——关注生活 学以致用(原卷版)(押题训练)2026年高考英语阅读理解突破策略及押题(全国通用).docx
- 清单04 综合性学习之语言表达(仿写邀请转述劝说) 活动策划(知识 方法 能力清单)(解析版)-2026年中考语文二轮复习讲练(全国通用).docx
- 清单09 古诗文对比阅读之内容 情感 写法对比 语言 炼字 拓展探究(知识 方法 能力清单)(解析版)-2026年中考语文二轮复习讲练(全国通用).docx
- 小说易错02 重点情节理解偏差(选择题)(易错专练)(全国通用)(原卷版)-2026年高考语文二轮复习讲练.docx
- 专题01 声现象(题型专练)(全国通用)(原卷版)2026年中考物理二轮复习讲练.docx
- 清单08 文言文(议论类 书信应用类)阅读之论点把握 文体特点(知识 方法 能力清单)(解析版)-2026年中考语文二轮复习讲练(全国通用).docx
- 清单11 记叙文阅读之朗读设计 表达技巧 主旨情感 开放探究(知识 方法 能力清单)(解析版)-2026年中考语文二轮复习讲练(全国通用).docx
- 语言清单05 语法填空中的词类(五)无提示词--连词(全国通用)(原卷版)2026年高考英语二轮复习讲练.docx
- 第04讲 想象探索与科学精神(《西游记》《海底两万里》《昆虫记》全国通用(讲义)(解析版)2026年中考语文一轮复习讲练.docx
原创力文档

文档评论(0)