Scratch案例—用Scratch巧解数学题,求累加和

用Scratch巧解数学题

——求累加和
问题:计算1+2+…+100 =?

据说,数学王子——高斯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开始一个数一个数硬算也是一种方法呀。虽然这种方法对于人工计算来说可能稍显复杂一点,但这种重复的计算对于计算机来说,压根儿就不是个事!我们今天就通过编程硬算。

通常在编写代码前,会把算法用流程图表示出来,就像盖房子先要有施工图一样。所谓编程,就是按照流程图,按部就班编写代码!有了具体的算法,很容易画出程序流程图。“硬算”的流程图如下:

在这里插入图片描述
有了流程图,编写代码就很简单了。流程图就是编程的施工图。学习编程,画流程图是基本功。一定要养成无流程图不写代码的好习惯!流程图本身就是编程思路的体现,通过画流程图也可以进一步整理我们的思路。
在这里插入图片描述
程序写好后,还要调试,看看功能是否正常。运行程序,按照提示输入100,结果很快出来了,“1+2+…+100=5050”。秒杀!

计算机是不是很强大呀!但前提是你要会编程呀!只有会编程,你才能让计算机替你解决问题呀!别担心,编程其实也没有想象那么难!只要你愿意学。

Scratch虽然是专门为少儿设计的编程语言,但其功能还是非常强大的,不仅可以创建动画、游戏和故事书,还可以用来求解数学题,实现一些数学算法。学过Scratch后,将来再学习其他高级程序设计语言,理解起来也会更加顺畅,更加容易!
转自:http://www.china-scratch.com/news/2566

猜你喜欢

转载自blog.csdn.net/weixin_44602985/article/details/86592767