友情提示:视频教程观看时请手动设置清晰度。
女儿三年级,学习了余数的概念。大概就是计算12除以5的余数为2。但是对余数稍加变化,就难以应对。比如去问她,从X取值为1-10000,X除以120的余数的最大和最小值分别是多少?她不知道。再问一个上初中的她的姐姐,也不知道。我在思考,是这个题目太难超出他们的理解能力,还是孩子缺少对这个知识点的思考和理解,或者是我们没有给孩子提供一个好的方式,让她们可以很容易的对这个知识点进行思考和理解。
我写了下面的代码给女儿看,她很快就知道了,X除以120的余数的最大和最小值分别是多少。
但我相信她未必有好的理解。我们仅仅是为了计算而计算吗?
于是我们来看下面这个游戏,这是一个6行8列的格子,和舞台的大小一致。每个格子是60*60。要求是小猫以随机的顺序铺满这48个格子,而且不能重复。
以随机的顺序铺上这些格子,很显然,应该使用1-48之间的随机数。但这个数字如何判断它所在的行列位置呢?这就是余数可以发挥作用的地方了。我们引入下面的代码模块:
行数为随机数除以8向上取整,列数为随机数除以8的余数,注意,余数为0时,正好在第8列上。于是这段代码可以把任何1-48之间的数字,指向它所在格子位置。余数计算,还附带向上取整计算,有了正确的用武之地。
我们来看一下主程序和最终录频效果吧。。。
程序视频: