前言

许多国家正在尝试将软件教育列入中小学教育必修课程,这些国家为什么要这样做呢?因为学生是祖国的未来,我们要培养他们的创造性思维和解决问题的能力。

软件教育的核心内容又是什么呢?其核心就是算法。“算法”这个说法可能有点难以理解,换句话说,它其实就是解决问题的步骤。因此,算法学习可以锻炼学习者的创造性思维和解决问题的能力。

2014 年 1 月,我运营的教育捐赠项目“创意计算机教室”中,曾以小学生为对象,利用 Scratch 进行算法教学,并针对教学前后学生的创造力和思考能力进行了相关调查。从调查结果中可以认定,学生的创造力和思考能力都得到了提升。也就是说,算法教育对培养学生的创造力和思考能力可以起到积极的作用。

然而,中小学生可以轻松学习算法的图书寥寥无几。韩国国内目前还没有一本书讲解如何利用 Scratch 编程语言实现算法,即使这是中小学教育中最常用的语言。

认识到这个问题后,我创作了本书,希望包括小学生在内的所有读者都可以学习 Scratch 算法。

本书通过适当举例和分步骤介绍运行过程,帮助孩子轻松、准确地理解算法概念。利用 Scratch 分步实现算法的核心内容,引导读者独立思考并完成学习。

不论是第一次学习软件的中小学生,还是负责软件教学的教师;不论是有编程基础的读者,还是初次接触算法的人,我都建议阅读本书。

为了提升读者的学习效果,我们提供了书中习题的答案,读者可到“图灵社区” 本书主页(http://www.ituring.com.cn/book/1769)下载。但我希望读者可以独立解决问题,因为亲自解决问题的过程才最重要。

大家可以登录“图灵社区”本书主页分享学习经验和成果,还可以相互讨论。

本书韩文版得以成书,要感谢 Hanbit Media 出版社的裴容硕理事、曹熙真科长,以及所有同仁。

希望广大读者可以通过本书在软件教育中有所获益。

金钟勋

2014 年 11 月

目录

  • 推荐语
  • 前言
  • 第0章 算法
  • 第1章 基础运算
  • 第2章 比较大小
  • 第3章 交换
  • 第4章 求和
  • 第5章 数列
  • 第6章 因数
  • 第7章 素数
  • 第8章 进制转换
  • 第9章 搜索
  • 第10章 排序
  • 第11章 检错
  • 第12章 编制密文