最新消息:

学习Scratch里的时间积木块(2)

Scratch 少儿编程 4373浏览 0评论

友情提示:视频教程观看时请手动设置清晰度。

上节课,我们用Scratch中“目前的(小时/分/秒)”积木块,调用电脑的时间,制作了一个时钟,效果是下面这样的。今天我们再来学习使用其它几个积木块。

学习Scratch里的时间积木块(2)

1.    “自2000年以来的天数”

        

大家仔细观察上图例子中的秒针,发觉秒针不是平滑向前移动,而是1秒针跳动一个刻度。原因是,积木块“目前的(秒)”的精度就只有1秒,我们无法获取0.1秒,甚至更短暂的时间。有没有办法解决这个问题呢?

        

答案是有的:使用积木块“自2000年以来的天数”。接下来,我们先认识它。

 

学习计算机的小伙伴大多数都知道Unix时间戳的概念。Unix时间戳是从1970年1月1日(GMT的午夜)开始所经过的秒数。(GMT时间即格林尼治标准时间,由于世界各地的经度不同,被划分为24个时区,北京在东8区,比GMT早8个小时)在计算机世界里,Unit时间戳大有用途,和时间有关的运算都离不开它。它为跨平台跨系统的时间统一提供了基准。

    

我们今天要学的Scratch积木块没有那么“古董”,它使用的是自2000年1月1日GMT午夜开始所经过的天数,能提供比“当前的(秒)”更高的时间精度。我写这段话时的时间是:北京时间2018/07/04, 11:10:05,下图是该积木块对应的数值。咦,这是什么鬼?

学习Scratch里的时间积木块(2)

 

这里是分割线,小朋友不要着急往下看,

试试看,怎样把它转化成当前时间?



好啦,揭晓答案啦,我们可以用这张图里的代码进行转换。

学习Scratch里的时间积木块(2)

 

代码运行的结果是这样的:

学习Scratch里的时间积木块(2)

 

小朋友们可能要问了,说好的北京时间呢?不是上午11点10分吗?怎么变成3点10分了?

 

其实啊,这个积木块也是以格林尼治时间为基准,它和我们北京时间相差8小时,所以将这个数值加上8,才是我们的北京时间。另外,通过转换之后,我们得到了毫秒级的时间。

 

小朋友们,计算机科学和我们的日常生活是息息相关的,我们从生活中处处可以找到编程的影子。

 

使用这个积木块,我们就可以让秒针像下图这样连续转动。具体怎么做留给小朋友们思考吧。如果有困难的话,可以给冉爸留言。

学习Scratch里的时间积木块(2)

 

2.    “计时器归零”和“计时器”

 

小朋友们在Scratch编程中应该经常使用到这两个积木块,很容易从字面上理解它们的意义。下面这个倒计时的例子,留给小朋友们自学吧。

 

学习Scratch里的时间积木块(2)

学习Scratch里的时间积木块(2)

您必须 登录 才能发表评论!