计算1+2+...+100 =?这是数学中的累加和问题,成人解答这个数学题当然觉得非常简单,但对于数学知识还很浅薄的低年级孩子来说,这是个大难题,一步一步计算太浪费时间,中途出错就前功尽弃了,如果学习了Scratch编程的话,孩子们再来解答这道题目就会简单得多了。今天南京小码王Scratch培训班老师就以此为例,来和大家讲讲如何用Scratch巧解求累加和的问题。
Scratch编程培训:用Scratch巧解数学题求累加和
据说,数学王子——高斯10岁时,数学老师为了惩罚一帮不听话的孩子,出了一道算术难题,就是上面这道题目。原以为会让大家忙乎一阵子,可是不一会儿高斯就向老师报告他算出来了。高斯的算法是这样的:
(1+100)+...+(50+51)=101×50=5050
现在,为了更好理解,有人提出:
1 2 3 ... 99 100
+ + + ... + +
100 99 98 ... 2 1
101 101 101 ... 101 101
2×(1+2+...+100) =101×100=100100
1+2+...+100 =100100÷2=5050
这些当然都是很好的算法。但是从1开始一个数一个数硬算也是一种方法呀。虽然这种方法对于人工计算来说可能稍显复杂一点,但这种重复的计算对于计算机来说,压根儿就不是个事!我们今天就通过编程硬算。
通常在编写代码前,会把算法用流程图表示出来,就像盖房子先要有施工图一样。所谓编程,就是按照流程图,按部就班编写代码!有了具体的算法,很容易画出程序流程图。“硬算”的流程图如下:
用Scratch巧解数学题求累加和
有了流程图,编写代码就很简单了。流程图就是编程的施工图。学习编程,画流程图是基本功。一定要养成无流程图不写代码的好习惯!流程图本身就是编程思路的体现,通过画流程图也可以进一步整理我们的思路。
用Scratch巧解数学题求累加和
程序写好后,还要调试,看看功能是否正常。运行程序,按照提示输入100,结果很快出来了,“1+2+...+100=5050”。秒杀!
计算机是不是很强大呀!但前提是你要会编程呀!只有会编程,你才能让计算机替你解决问题呀!别担心,Scratch编程其实也没有想象那么难!只要你愿意学。
虽然Scratch是一种专为青少年儿童设计的编程语言,适合孩子理解,但功能非常强大,不仅可以创建动画,游戏,还可以用来解决数学问题并实现一些数学算法问题解决。通过Scratch学习,孩子们可以培养逻辑思维技能,并且在此基础上,将来学习其他高级编程语言会更容易。