admin管理员组

文章数量:1572182

在scratch的学习过程中,我们需要掌握一些编程的基本知识,下面给大家逐一介绍

数据类型 Data Type

实际编程环境中会涉及很多数据类型,但在scratch中数据类型基本就三种:数字、字符串和布尔

数字 Decimal

输入一个数字很简单,在任何椭圆形的输入框内都可以输入数字。scratch甚至提供了专门的运算工具来处理数字

我们注意到在绝对值的指令块的下拉选项中,还有很多数学函数,包括三角函数、反三角函数、指数函数和对数函数,这些是高中数学中要学的东西。

随机数 Random

这些指令块中还有一个比较特殊的是随机数,它用于生成一个1-10之间的随机整数。想一想,如果我们想生成一个任意区间之内的随机数,应该怎么操作?比如我想生成1-100之内的随机数。

生成1-100的随机数

  • 首先,系统只提供了1-10的随机数,我们用这个随机数乘以10,就得到了10-100的10的倍数
  • 然后,用1-10的随机数减1,就得到了0-9的随机数
  • 最后用第一步的结果减去第二步的结果,就得到了1-100的随机数。

    那要想得到1-1000呢,同理,用上面的结果乘以10,再减去0-9。想得到1-10000呢,用1-1000的随机数乘以10,再减去0-9。依次类推。

二进制、十进制、十六进制 Binary Decimalism Hexadecimal

  • 我们日常生活中用到的数字都是十进制的,为什么呢,因为我们人类有十个手指头,最初的计数就是数手指。然后阿拉伯数字1-10代替了手指的功能。

  • 计算机只“认识”二进制的数字,也就是只认识0和1。为什么呢,因为计算机是集成电路组成的,电路需要开关来控制,而开关只有“开启”和“关闭”两个状态。而二进制中的1就代表开启,0就代表关闭。

  • 除了二进制外,还有八进制,十六进制。因为二进制虽然简单,但是计数起来位数很多有点麻烦,所以就有了八进制和十六进制,一般用于位计算和编码。

  • 这里仅以十进制、二进制和十六进制的对比来说明它们的计算方法

字符串 String

在任何输入框中也能输入字符,包括英文字母、汉字甚至其它语言文字。scratch也提供了专门处理字符串的方法

布尔 boolean

布尔型的变量只有两个值,true或者false(真或假)。就像它的值一样,布尔型的变量用于判断真假。
比如 (1+2=3),这句话是真的,是true;(1+3=2),这句话是假的,是false.

在scratch中所有“六角形”的代表的值都是布尔型的变量。

逻辑运算

就像数字有加减乘除四则运算一样,布尔型的变量也有自己的运算,叫做逻辑运算。
最基本的逻辑运算包括与、或、非

操作名 英文名 操作符 举例 总结
and & true&true=true; true&false=false; false&false=false 全真为真,有假为假
or | true|true=true; true|false=true; false|false=false 全假为假,有真为真
not 真变成假,假变成真

在scratch工具中,与、或、非对应的命令是:

一切六角形的孔中都可以镶嵌布尔型的积木块

  • 一个与操作的例子,找出1-100以内所有能被3整除的单数。能被3整除意思是这个数除以3的余数等于0;单数意思是这个数除以2余数不为0

    可以看到,其中“不等于0”这个判断就是用“不成立”这个命令实现的。

数据结构 Data Structure

以下两种数据结构在之前已经介绍过了
数据结构_数组和列表

数组 Array

列表 List


对象 Object

在scratch中,对象最直观的表现就是角色。
一个角色有:
角色名称,x坐标,y坐标,显示/隐藏,大小,方向

以上这些可以称为角色的属性。

一个对象,最主要的特点就是它的属性,以及对于它的属性的改变的操作。
所以,世界上任何一个物体都可以是一个对象,它都有自己的属性。
比如一个人,他有年龄,有身高,体重,长相等等。
比如一部手机,它有尺寸、使用寿命等等。
当我们了解了现实世界中物体的属性后,我们就可以用编程的方法把它抽象为一堆数据

比如在打砖块的游戏中,我们为砖块建立的“仅适用于当前角色的变量”,就属于砖块的属性。


流程控制 Process Control

流程控制,简单来讲就是根据条件的判断,使程序运行到不同的分支上去。
例如:我明天准备去旅游,但前提是明天不要下雨,如果明天下雨,我就不去旅游了;如果明天不下雨就去。这就是一个根据某个条件来决定接下来的进程的例子。

顺序结构

顺序结构就是程序执行过程中没有分支,比如用上面的例子来做顺序结构,明天下不下雨我都要去旅游

Created with Raphaël 2.2.0

本文标签: 基础知识Scratch