当前位置:首页 > 编程实例 > Scratch编程实例~如何设计乘法口诀计算器

Scratch编程实例~如何设计乘法口诀计算器

01-目标

课程将学习到:

  1. 乘法枚举的基本算法和思路,将一个积分解为两个因数的全部方法;

  2. Scratch编程实现数学乘法枚举法;

  3. Scratch编程的条件语句、循环语句和添加链表功能的方法。

360截图177202285911665.png

02-课外知识乘法表

现在小学生学的“小九九”口诀,是从“一一得一”开始,到“九九八十一”为止,而在古代,却是倒过来,从“九九八十一”起,到“二二得四”止。因为口诀开头两个字是“九九”,所以,人们就把它简称为“小九九”。大约到13、14世纪的时候才倒过来像现在这样“一一得一……九九八十一”。 古巴比伦很早就有乘法进位制,但运算过程没有九九口诀简单快捷,不便于记忆。中国使用“九九口诀”的时间较早。在《荀子》、《管子》、《淮南子》、《战国策》等书中就能找到“三九二十七”、“六八四十八”、“四八三十二”、“六六三十六”等句子。由此可见,早在“春秋”、“战国”的时候,《九九乘法歌诀》就已经开始流行了。

img

03-数学知识小课堂**

枚举法:枚举法是将难题的全部将会的参考答案一一列举,随后依据标准分辨此参考答案是不是适合,适合就保存,有问题就丢掉。例如,要查找一个整数,该整数可以被1到100之间的5除尽,必须确定1到100之间的所有整数。当然,还有其它相对快的方法,诸如能被5除尽的整数除以0或5的整数。

枚举是计算编程中一种常见的思维方式。它利用计算机速度快、精度高的特点,逐一检查所有可能要解决的情况,找出符合要求的答案。因此,枚举就是为了答案的全面性而牺牲时间。

枚举算法因为要枚举问题的所有可能答案,它都具有以下特征:

  1. 得到的结果肯定是正确的;

  2. 可能做了很多的无用功,浪费了宝贵的时间,效率低下。

  3. 通常会涉及到求极值(如最大,最小,最重等)。

  4. 数据量大的话,可能会造成时间崩溃。

img

04-模型搭建


第一步:搭建角色和背景            

(1)新建项目:在菜单栏“文件”中,选择“新建项目”,创建一个空的项目,工程文件命名为“乘法口诀表”**;

(2)创建空舞台:**将鼠标移动到小猫的位置,鼠标右击,选择“删除”;此时整个项目都是空的。

(3)创建角色和舞台:**创建一个自己喜欢的角色和舞台,此处角色选择了“Nano”,舞台背景选择了“room1”,如下图所示:

img

(5)保存项目:**在菜单栏“文件”中,选择“保存”。


第二步:乘法口诀表模型搭建

(1)新建变量和链表:在“数据”里,点击“新建变量”,新建“积”、“循环体”和“限值”三个变量;点击“新建链表”,创建“乘法口诀表”链表。

img

在“链表”里将“乘法口诀表”前的方框打勾,这样就能在舞台上显示链表,如下图所示:

img

(2)程序初始化:程序开始,进行初始造型的定义,设定循环的起始数值,并且将乘法口诀表限制在50以内。

img

(3)判断输入是否大于限值:通过条件语句,当用户输入的数大于规定的限值时,提示用户重新输入;如果用户输入的数小于规定值,则进行下面步骤。

img

(4)乘法口诀表生成:如果用户输入的数小于规定限值,那么第一个加数从1开始,分别列举积等于用户输入的表达式,并且表示式加入到“乘法口诀表”的链表中,程序如下:

img


(5)保存项目:在菜单栏“文件”中,选择“保存”。


05-完整程序

算法的完整程序如下:


img

img


06-思维发散和程序思考

(1)如果要规定100以内的乘法口诀表,那么程序应该如何更改?

参考建议:我们通过观察九九乘法口诀表,可以得出以下的规律:总共有9行,第几行就有几个表达式。同时要注意每行表达式的规律:第j行,表达式就从j1开始,一直到jj结束,共有j个表达式,这个效果可以通过一次循环实现。

(2)模仿“乘法口诀表”,制作一个“除法口诀表”,请先构思编程思路,然后再进行编程。

参考建议:

整数除法的法则:

(1)从被除数的商位起,先看除数有几位,再用除数试除被除数的前几位,如果它比除数小,再试除多一位数;

(2)除到被除数的哪一位,就在那一位上面写上商;

(3)每次除后余下的数必须比除数小.


除特别注明外,本站所有文章均为趣味编程网-少儿编程_儿童编程学习班教育指定趣味学习网站!原创,转载请注明出处来自http://airboxs.com/post/11.html