粉丝1032获赞5211

在上次讲解列表基础知识的微视频里,有给大家留下了一个思考题啊,也就是如何找到列表中相同内容的序号。比如我现在购物车里面有三十六个水果, 那我怎么找到在这三十六个水果中,西瓜的序号呢啊?你当然可以一个一个找,比如说 序号六是西瓜,然后接着接着继续往下找啊,十五是西瓜,然后依次一直找,找到第三十六个,看看哪些序号是西瓜。但是这样做呢,太 low 了啊,我们要让程序 来帮我们找,而不是人工的一个一个的去找啊。那这样子费时费力。而且万一如果我今天这边的水果有三百六十种,甚甚至三千几千种, 那难道还要一个一个去找吗?这很不现实。那怎么让程序去帮我找出我购物车里面西瓜的所有的序号呢?我们可以呃,借助 这个变量来帮我们实现。那在此刻来曲中,他已经增加了,已经有了一个叫做我的 变量,这个现成的,那我们直接拿来用也可以。好,或者你要自己新建一个变量,那这边已经有了,我就给他改一下。在这个我的变量上点右键有一个修改变量名, 我把它修改成序号。好确定好。这时候呢,这就变成了变量名,就变成了序号。那接着呢,我们再找到列表里面有一个叫做 购物车第几项这条命令。第一项呢,我双击一下就是荔枝,那我给他改一下。第二项就是甜瓜啊,第十二项 就是龙眼,那第三十六项啊,就是橙子啊。所以呢,这个第几项就代表了这个购物车里面相对应的水果的名称。那我只要让程序从第一项一直到第 三十六项,分别去判断是不是等于西瓜,如果是,我就把这个第几项这个序号把它哎罗列出来或者保存下来就可以了嘛。啊,那要从第一项一直到第三十六项。我们可以借助 这个控制里面的重复执行的命令。那我们直接用带有次数的,因为这边的水果并不是无穷无尽的啊,所以我们用带有次数的就行。那多少次呢?啊,小伙伴肯定想到了三十六次。那其实我们可以 在借助列表里面还有一条命令,叫做购物车的项目啊,双击一下三十六,也就是这边的三十六个 水果啊,用这条命令呢,就不用把这个三十六写死了,我们用它来代替三十六。好。接着我们接着要来做一个这个呃判断,判断的话就要用到 如果了啊,如果我这个购物车的第序号项啊,第序号项他的值呢?如果等于西瓜, 如果是只等于西瓜,我们给它放进去。好。接着我们就让我们先把它数打印出来说,让喵喵说出来看一下好,用外观里面的这个说 啊,说呢,说什么呢?就把这个序号给他说出来,我们把它复制一下,然后把这序号直接可以放进去说出来。好。那一开始这个序号是多少呢?当然是从一开始。所以呢, 我们呢就从变量里面把这个序号一开始把它设为多少,设为一好。 那接着如果是就这样子把它放进去直行的话,那一个西瓜都找不到。 为什么呢?因为一开始的时候我们这个序号是一,那购物车呢,就相当于购物车的第一项,购物车的第一项是荔枝,他不是你西瓜,所以不可能说把这个序号说出来。那重复了三十六次以后 下来,他每一次都是对比第一项好。所以我们要让这个序号能从一二三四一直增加到三十六。因此呢,每当判断完一次是不是西瓜的时候,我们就要让序号 增加一美,这个如果是表示判断,判断 是不是西瓜,那判断完以后,我们要把这个序号加一好,然后呢, 一直往下啊,加一零,刚开始是一啊,加一以后是二,然后二呢,再加一就三三,再加一四一,以此类吹,一直重复到三十六。好,那接着我们把它放进去。 这时候程序跑起来应该才是正常的。我们跑跑看点力气。 第六项,第十五项,二十四项,三十四啊,六十五,二十四,三十四,我们来检查一下,六啊,四西瓜,还有 啊,十五是西瓜,以及二十四西瓜,还有一个三十四,三十四,哎,是西瓜,后面的都没有了啊。那这样子呢,就通过程序啊,找到了这个西瓜的序号。那当然这样用说出来的, 说完以后就过了,说完以后就过了。可能如果西瓜多的话,可能我们也还是记不住。那实际上我们可以 再建一个列表,就把西瓜哎西瓜的西瓜序号吧,把它保存记录下来啊。那怎么做呢啊?我们就不要再说这个序号了,我们在 找到的以后,我们就怎么样把这个序号给他添加到哪里? 西瓜序号里面。那这个序号呢,我们就不用给他说出来啊,把它放到这里面,接着再把它替换上去。好,这时候就不用说了。好,这时候我们再点一下利器,看一下 六十五、二十四,三十四就全部找到了啊。那刚刚我们说到我们这边不要把这个次数斜 我们用购物车的项目,实际上呢,这样子让程序就更有这个灵活性和扩展性啊。为什么这么说呢?比如我现在在增加 六种水果啊,这里面还有一个西瓜,那我们双击一下。好,现在这个水果变成四十二了。好,那我们先单独看一下这个购物车的项目。 哎,是不是他就自动会变成了四十二,那这样程序就很灵活了啊。 不管我今后加了多少个水果,我就都能通过同样的程序找到这个西瓜。好,那我们来试一下。当然,我们先把这个西瓜里面的这个序号先清空一下,让他重新找一下。好,这时候 在点里去。哎,六十五,二十四,三十四啊,这是我们之前找到还有个四十啊,看一下是不是四十也有 啊,事实是西瓜。好,所以呢,我们用购物车的项目,这样子可以让程序变得更灵活啊,更有扩展性啊。那 今天的这个微课程,小伙伴们,你们学起来了吗?希望你们能够举一反三,用在实际的这个案例中啊,或者实际的程序设计中。好,感谢大家的聆听,再见!

这样的,这样的,还有这样的鼠标拖尾特效是怎么做出来的呢?小学生教我编程,侯老师编程网站上已经有很多小伙伴做了相关的教程,太棒了,这说明真正掌握了这个技巧,这也是费曼学习法的应用了。接下来我把我参考这些教程做出的鼠标拖尾特效方法 分享给大家。话不多说,开始编程。打开 scratch 编辑器之后,我们把自带的角色删除,我们从角色库里面找出来大家比较怀念的小猫,作为我们这次作品的主角, 要实现脱尾特效的话,首先这个小猫肯定不能只有一个,他应该有很多个才能有这种像移形换影的一样的效果。那我们首先呢来通过克隆的功能实现从一个角色变成多个克隆体的功能,当然我们最终可以用跳跃呀或者行走啊 来做这个脱位特效。这里呢,我们简单一点,让他呢不断的移到我们的鼠标的位置,这样的话更容易体现出来这个效果,我们让他重复执行。首先来较验一下点击率息之后,哎,这个小猫呢,就会一直跟随着我的鼠标进行移动, 并且呢他会实时的去克隆很多个这样的克隆体,很容易就把我们的屏幕给撑满了,对不对?到这个地方大家看到是不是不会再有新的克隆体出来了? 有没有同学知道为什么呢这个地方呢?答案呢,其实很明显啊,是因为我们的小猫克隆体是有上限的, 那我们的问题就变成了,你知道这个小猫克隆体他的上限是多少吗?欢迎在评论区里留言。那为了实现鼠标拖尾的特效不断的有呢,我们可以加上这样一个动作,当 克隆体启动的时候,我让他稍微等一会,比如说一秒钟让他把自己删除掉,我们再来看看效果,点击率齐好,前面是一样的哎,发现没有,我们的克隆体呢,并不会无限的增加了,因为一秒钟之后,之前克隆的那些克隆体呢,他就会 把自己删除掉了,所以我们只是数量有限的克隆体显示在舞台上面。现在呢,确实有这个拖尾的效果了,但是呢,是不是透明度没有发生变化呀,看起来有一点不是那么好看。接下来呢,我们给拖尾特效呢加上一些特殊处理就可以了,我们在这个地方克隆体启动之后呢, 让他的透明度不断的发生变化,我们在外观里面找到将虚相特效增加多少,虚相特效呢,也就是我们说的透明度增加二十五,我们给他缩小一点二 点五吧,然后呢让他重复执行四十次,这样的话虚像特效就从零变成了一百啊,也就是说从完全不透明变成了完全透明。这个等待呢,我们就不需要添加进去了,因为这个重复执行的默认带一个等待的延时,现在呢,我们来看一下效果, 走你哦,这个延时是不是看起来就已经比较不错了呢?拖尾特效看起来就比较正常了,走 哎,没问题,我们现在呢是用鼠标来控制你,完全可以呢用跳跃来实现同样的功能,这样我们就实现了突围特效的功能了,相信大家可以把这个技巧灵活的运用在 自己的作品当中,另外实现脱尾特效还是有其他的方法的,我们之前在烟花的课程中就做出过类似的效果,感兴 同学可以先思考一下,以后我们再分享另外一种制作鼠标错位特效的方法。如果你理解了本节课的内容,欢迎在评论区里回复。 ok, goodbye, 下期见!


上一节课,我们已经做好了小强的移动和小球的生成啊,小球也能到处移动了啊,但是我觉得我的小强好像不太够炫酷啊,所以这节课呢,我给他来一个幻影的效果啊,让他看跑起来很帅气啊。 好,我们用一个最简单的操作啊,小强他在移动,或者说他从出生开始,他就做一个不停的克隆自己,我们让他新建一个自然段,重复执行,不停的克隆自己, 但这个克隆自己不是无限的啊,他不停的克隆自己。我们现在来看看现在的效果。好,我们像一条大长蛇一样,因为后面的都是 影子,我带出去的才是我们的本体。好,我们现在来把它变成一个虚影, 因为我们后面的影子是一个克隆体,所以我们当我们克隆出来的时候,当克隆体被启动的时候,我们让他做一个虚相的变化,我们让他重复十次, 每一次我们去外观里面找到一个,将颜色特效增加,我们变一个特效。不用颜色特效啊,我们用虚相特效,每次增加时。 好,我们来看看现在的效果。克隆体被出来的时候,哎,他越来越虚,然后就隐身不见了。好,但是呢,注意啊,现在他是虚向隐身, 实际上他还是存在的,所以呢,我们变成隐身之后呢,我们让他删除此刻龙体,再控制最后一个删除此刻龙体。好,这两块就是我们的幻影特效的。呃,一般的操作,我们来看看现在的效果, 哎,现在我们移动的非常快,虽然其实跟之前移动没有多大区别,但是这个幻影的特效看起来就非常炫酷。好,这节课我们就讲到这里。