前言

利用Scratch编程,我们可以轻松解决许多数学问题,还能省去繁杂的步骤,即使是没有学到这部分知识的孩子,只要理解了Scratch的算法和核心,就能对后面要学到的数学知识有个提早的认知。

题目

使用Scratch编写程序,对列表中的10个数利用选择排序法排序。
简单选择排序的基本思想:第1趟,在待排序记录r[1]r[n]中选出更小的记录,将它与r[1]交换;第2趟,在待排序记录r[2]r[n]中选出更小的记录,将它与r[2]交换;以此类推,第i趟在待排序记录r[i]~r[n]中选出更小的记录,将它与r[i]交换,使有序序列不断增长直到全部排序完毕。
以下为简单选择排序的存储状态,其中大括号内为无序区,大括号外为有序序列:
初始序列举例:{49 27 65 97 76 12 38}
第1趟:12与49交换:12{27 65 97 76 49 38}
第2趟:27不动 :12 27{65 97 76 49 38}
第3趟:65与38交换:12 27 38{97 76 49 65}
第4趟:97与49交换:12 27 38 49{76 97 65}
第5趟:76与65交换:12 27 38 49 65{97 76}
第6趟:97与76交换:12 27 38 49 65 76 97 完成
数据交换位置的一般方法:假设我们要交换A\B两个瓶子中的水,首先要把A瓶子里的水倒出来放入其它容器里C里,然后再把B瓶子里的水倒入到A瓶里,然后把其它容器C里的水倒回B瓶子里,这样就完成了交换,程序也是如此。例如:替换第1项与第3项,将第1项存入临时变量,然后把第1项替换为第3项,再将第3项替换为临时变量。
Scratch程序如图:

少儿编程150讲轻松学Scratch(十二)-Scratch编程算法练习-选择排序相关推荐

  1. 少儿编程150讲轻松学Scratch(十二)-用Scratch制作石头剪子布游戏

    前言 Scratch融合卡通.动画.音效等多媒体的运用和直观拖拽式的编程方式,生动有趣,可以编写各种类型程序,游戏.动画.互动美术.实物模拟.数学模拟等,想象无限.同时蕴含丰富知识,体现现代编程思想, ...

  2. 少儿编程150讲轻松学Scratch(十)-用scratch编程实现寻找素数

    前言 Scratch中包含了很多有趣的数学知识,有些孩子可能一开始对数学没兴趣,但看到Scratch中有趣的界面和设置之后,反而对于数学知识能有进一步认识.今天要给大家讲解的是判断素数. 题目:找出1 ...

  3. 少儿编程150讲轻松学Scratch(八)-如何设计经典游戏打砖块

    前言 打砖块游戏很多人都玩过,没玩过的孩子可以自己设计一个这样的游戏来动手尝试一下.打砖块游戏其实比较简单,用Scratch就能来实现,这也是少儿编程课程中的经典游戏案例之一.具体该如何使用Scrat ...

  4. 少儿编程150讲轻松学Scratch(十一)-用Scratch巧解数学题——判定质数

    前言 质数和合数是数学中的两个基本概念,两位数以内的质数和合数还比较好区分,位数一多,很多人就不太好判断了,但如果借用工具的话,这个问题就比较容易得到解答了.通过Scratch编程,短短几行代码,我们 ...

  5. 少儿编程150讲轻松学Scratch(六)-少儿编程命名规则

    前言 少儿编程命名也是很重要的哦,小朋友们代码里面的命名有没有做好呢?有的宝宝可能要会有疑问,老师老师,我给里面的东西怎么命名又不影响程序功能,为什么起个名字也要在意呢? 无论是代码前期搭建的工作,还 ...

  6. 少儿编程150讲轻松学Scratch(七)-Scratch学习中需要注意的地方

    前言 通常Scratch学习流程是,先掌握程序相关模块,并且了解各个模块的功能使用,然后通过项目的编写和练习,不断精进孩子的Scratch技术.那么Scratch学习中有那些需要注意的地方呢? 在所有 ...

  7. 少儿编程150讲轻松学Scratch(三)-关卡类游戏《鱼塘》

    前言 今天用Scratch实现一个多关卡类的小游戏<鱼塘>.这个游戏很简单(游戏场景见下图),但是需要使用大量的变量.定义函数.发布接受消息等内容.对于初学者来说还是有一定的挑战性的.好, ...

  8. 少儿编程150讲轻松学Scratch(二)-制作过马路小游戏

    前言 今天为大家带来一款小游戏的制作教程,只要跟着步骤做,就能轻松地制作出属于自己的过马路小游戏. 家长们可以用此教程指导孩子逐步完成,然后一起测试和游玩,再一起探究每处代码的逻辑意义. 教程 教程如 ...

  9. 少儿编程150讲轻松学Scratch(十一)-用Scratch算法给矩形工具填充颜色

    如何利用Scratch算法给矩形工具填充颜色? 题目描述:已知矩形的大小为n×m,现用a×a的正方形填充该矩形.输入三个正整数n,m,a(n,m,a≤10^3),计算至多能填入多少正方形?(正方形可以 ...

最新文章

  1. ksql中定义的本体在dataModel中不存在
  2. 复制本地文件完整路径
  3. Android系统中的进程管理:进程的优先级
  4. mkyaffs2image编译
  5. 清除element残留表单校验
  6. apachemod_wsgidjango部署多个项目
  7. CISCO发现协议(CDP)理论与实验
  8. MySQL特有的SQL语句 第一弹
  9. Face3D学习笔记(3)3DMM示例源码解析【上】准备工作
  10. html 日期区间选择器,element日期范围选择器
  11. 【python】80行代码实现压缩包密码破解软件,支持zip和rar
  12. 数领科技|做工业设计可能会用到哪些软件?
  13. directadmin php.ini 修改,DirectAdmin 更改服务器IP
  14. 日本显示屏公司的尴尬:夏普被收购 JDI也岌岌可危
  15. OMPL官方教程学习State Validity Checking
  16. C语言生成n个随机坐标,c语言如何生成随机数 怎样用c语言生成n个随机数?
  17. 计算机计算性能,计算机计算能力的关键特点
  18. 一日一技:用Python绘画有多好玩
  19. 计算机原理形考3,计算机组成原理A形考作业3参考解答
  20. 【图解】九张图带你读懂大数据医疗

热门文章

  1. 光端机使用与日常保养
  2. 光端机怎样使用?光端机怎么和交换机连接?
  3. a类网络被谁用了_谁说学考没有用?浙江三位一体报名要求,需要几A几B都在这里...
  4. 计算机网络发展第二阶段 兴起于,计算机辅助开始于计算机发展第几阶段
  5. mysql 深胡_Mysql胡说八道
  6. 信号扫描_科研必备“武器”之扫描电子显微镜
  7. 前端开始学java_[Java教程]开启前端学习之路
  8. linux抓包提示没有权限,linux下wireshark不用sudo权限抓包包
  9. 输入法问题_「图」KB4515384再爆新问题:OOBE时中文输入法阻止创建本地账户
  10. 无载波幅度和相位调制(CAP)与QAM调制的详细解析(可见光通信应用场景),以及CAP matlab程序下载链接