最新消息:

Scratch模拟病毒传播趣味动画

Scratch 少儿编程 3002浏览 0评论

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

01

亲爱哒读者们大家好,这是小呱鼠年的第一篇推文。2020年的这个春节,大概是我们过得最不喜庆的一个春节,每天早上醒来,就是看关于疫情的最新消息,老老实实在家呆着成了我们日常的活动模式。

  我们在年前回到了位于鄂西北的老家,几天后,村委会开始上门登记,并要求我们每日上报体温,再然后,村里开始封路,有志愿者每日给村里喷洒消毒液。我们的归期由原计划的正月初八,推后到正月十五,再到现在的遥遥无期。我们的心情从开始的不以为然,到紧张焦虑,变为现在的淡然。

这个我从小生活的小山村,山清水秀,住户稀少。

正月初十开始,我们开始了在家办公。

陶渊明做梦都想不到的理想生活,想不到就这样实现了。

Scratch模拟病毒传播趣味动画

 

这个春节,成了工作以来,陪父母最长的一个春节。

这样想想,反而更珍惜现在宅在家里的日子。

无聊的时候,陪孩子搭搭积木,也是极好的。

 

Scratch模拟病毒传播趣味动画

 

顺便给想出门玩的孩儿们科普一下病毒知识。

之前读过一本书《病毒星球》:

 

Scratch模拟病毒传播趣味动画

 

本书核心就是告诉我们:病毒永远不会离我们远去。

再往回捯一捯历史,就会发现,我们人类的发展史,就是一部与传染病的战斗史

其实不能算战斗,主要是讲人怎么被完虐。

最早的大型瘟疫是公元前429年的雅典瘟疫,消灭了雅典四分之一的人口。

也随即结束了柏拉图,苏格拉底等群星闪耀的辉煌的希腊古典时期,推测可能是天花或麻疹。

还有6世纪拜占庭(现在的伊斯坦布尔)的查士丁尼大瘟疫

由于太猛,导致人们上街时脖子上都得挂个有自己名字地址的牌子——因为很可能走着走着突然就挂了,方便收尸。

15世纪,身经百战有抗体的欧洲人登陆南美洲,携带的天花、麻疹、白喉、伤寒、腮腺炎、流行性感冒等等就开始对南美土著开始了“降维打击”。

结果是灭霸响指都没这么厉害——印第安人被灭了95%

 

数据不够直观的话,我又用Scratch做一个动画,模拟一下病毒在人群中的传播。

Scratch模拟病毒传播趣味动画

 

动画中,绿色点点代表健康人群,正常情况下,健康人群在正常流动,当出现了第一个感染者,人群还在流动的话,很快会感染更多的人。

这个时候,如果我们意识到问题的严重性,那么我们就不要出门走动,这样病毒传播的途径就被切断了。

同时,我们的医务工作者就出现了,他们会寻找感染者,并将他们隔离医治。

中国历史上就有过多次在没有疫苗的情况下战胜瘟疫的经验,靠的就是隔离。

对我们个体来说,每个人戴口罩、多洗手、少出门,待在家里别添乱,就是给郭嘉做贡献了。

02

这个程序到底是怎么实现的,我们一起来看看代码

这个动画有两个角色:点点、猫医生:

Scratch模拟病毒传播趣味动画

01
变量和列表

我们定义了6个变量和2个列表。

编号:记录克隆体的编号;

感染数量:记录感染者的数量;

健康数量:记录健康人群的数量;

人口流动:人口流动参数,参数越大,人口流动越快;

人口总数:记录人口的总数量;

我的变量:记录克隆体的数量;

感染:该列表用于存放感染者;

健康:该列表用于存放健康者;

02
角色:点点

脚本如下:

Scratch模拟病毒传播趣味动画

Scratch模拟病毒传播趣味动画

03
猫医生
脚本如下: 

Scratch模拟病毒传播趣味动画

好了,脚本到这里就写完了,游戏效果也在前文展示过了。

Scratch模拟病毒传播趣味动画

原创不易,需要转载请联系作者,望大家且转且珍惜

转自公众号:
编程小呱

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