您的位置: 主页>机器人编程>Scratch编程>递归算法在scratch学习中的运用
加盟酷吧机器人 培养孩子核心能力

递归算法在scratch学习中的运用

递归算法应用

     学习scratch编程的同学,到了进阶课程阶段会接触到递归的概念。

     但是很多人很难理解什么是递归。

    因为正常人的思维,一般是迭代(iteration),比如人都是先学习加减法,再学习乘除法,最后学习微积分。归纳法其实就是一种迭代,从一个简单的起点,推广到一般情况。

   而递归(recursion),则是一种反人类的逆向思维,会让程序变得非常之简洁。

递归算法简介

递归算法是一种直接或者间接调用自身函数或者方法的算法,其实质是把问题分解成规模缩小的同类问题的子问题,然后递归调用方法来表示问题的解。递归算法对解决一大类问题很有效,它可以使算法简洁和易于理解。

同学们小时候经常念的:从前有座山,山里有座庙,庙里有个老和尚给小和尚讲故事!故事是什么呢?“从前有座山,山里有座庙,庙里有个老和尚给小和尚讲故事!故事是什么呢?

如此循环往复,是不是像极了scratch里的重复执行模块?

递归算法在scratch里的实际运用

     其实重复执行除了可以通过循环结构实现外,还可以通过另一个强大的技术实现,那就是递归。

以画正三角形为例,通常我们是这样画的:

递归算法在scratch学习中的运用

绘制三角形需要循环3次

如果用递归算法怎么做?

这里需要运用到scratch里的更多模块

递归算法在scratch学习中的运用

通过更多模块,我们创建新的功能块,给新功能块命名,并且可以自定义新功能块的含义。

递归算法在scratch学习中的运用

我们将循环3次而成的正三角形重新打包,定义为新的功能块,最终程序改为:

递归算法在scratch学习中的运用

同学们理解了吗?

递归思想的运用非常之广泛,来凤凰机器人一起探索编程的奥秘吧!

递归算法小练习

让我们加点难度吧?下图怎么用递归算法画出来?

递归算法在scratch学习中的运用

后记,小编朋友公司研发了一个游戏化的少儿编程在线课程(5-12岁),游戏化教学结合scratch(一款在线少儿编程工具,类似乐高的积木拼搭),我家娃娃学了几次课,非常喜欢(超预期),16次课才200多块钱,对锻炼孩子的思维能力和动手动力很有帮助。

欧美思机器人教育加盟 赚钱好项目
上一篇:Scratch3.0实例(猫捉老鼠)
下一篇:在家学scratch(3)--接苹果
您可能喜欢
​Scratch3.0少儿编程案例:画雪花
Scratch3.0少儿编程案例:画雪花
​吃啥?这个问题交给Scratch!
吃啥?这个问题交给Scratch!
​Scratch学习心得(1)
Scratch学习心得(1)
回到顶部