少儿编程奇幻之旅(第八课):智开宝箱

网友投稿 2019-11-23 13:55

Nick和Libra好不容易躲过蝙蝠,穿过洞穴,走入一间密室,在密室中央的石桌上放着一个箱子。

https://cdn.china-scratch.com/timg/191125/1355345025-0.jpg

Scratch任务卡

密码箱上的谜题如下,解开密码箱上的谜题,密码由四位数字组成(1~9)。公式为:36+a*9/b-12*c+d=29,abcd对应着4位密码。

https://cdn.china-scratch.com/timg/191125/1355344A2-1.jpg

穷举法

什么是穷举法呢?穷举就是找出所有可能的密码,逐个尝试,直到密码正确为止。1111,1112,1113……9999,共6561种组合,也就是说最多要尝试6561次就能找到答案。想想这个6561是怎么计算出来的?

Libra暴力破解密码

6561个密码,如果手工一个个尝试,这计算量是不是挺大的。不用担心,Libra是机器人,这种问题对他来说就是小菜一碟。

a、b、c、d取值范围都是1……9,用多重循环嵌套,让Libra遍历所有可能的密码。Libra遍历时的规律:

(1,1,1,1)  (1,1,1,2)  (1,1,1,3)

(1,1,1,4)  (1,1,1,5)  (1,1,1,6)

(1,1,1,7)  (1,1,1,8)  (1,1,1,9)

(1,1,2,1)  (1,1,2,2)  (1,1,2,3)

(1,1,2,4)  (1,1,2,5)  (1,1,2,6)

(1,1,2,7)  (1,1,2,8)  (1,1,2,9)

 ……    (9,9,9,8)  (9,9,9,9)

使用4个变量表示abcd,每个变量取值从1到9,直到满足等式:

https://cdn.china-scratch.com/timg/191125/1355354c4-2.jpg

拓展

1、如果密码取值从1~9变为0~9,那4位密码的组合有多少种?

2、观察生活中的密码:密码使用的场景,密码的复杂度,密码丢失了怎么办,密码是怎么防暴力破解的?快把你观察的结果跟爸爸妈妈聊聊。

第七课拓展题答案

1、除了用键盘控制Nick移动之外,还可以通过什么方式控制Nick移动呢?

除了键盘的左右方向键,其他键也是可以的哦;除了键盘,用鼠标控制也可以的哦;除了键盘鼠标,用智能识路也是可以的哦。方法很多,快试试吧。

2、Libra跟随Nick,除了将x坐标设置为Nick的x坐标-70之外,还可以通过什么方式让角色跟随另一个角色呢?

Libra也可以通过移到Nick这个积木块,跟随Nick移动,试试这个积木块,并说说,移到Nick 与 将x坐标设置为Nick的x坐标-70 两个有什么区别?

https://cdn.china-scratch.com/timg/191125/135535HS-3.jpg


3、当碰到蝙蝠的时候,现在是从开启城门开始重新进入,怎么调整脚本使得碰到蝙蝠时,直接从进入城堡后开始?

在碰到蝙蝠的时候,我们使用了“停止全部脚本”的积木块,所以全部脚本停止后,只能从头开始;如果碰到蝙蝠时,我们广播一条“进入城堡”的消息,是不是就能从进入城堡开始了。

https://cdn.china-scratch.com/timg/191125/13553515N-4.jpg

-未完待续-

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com