在我们的语境里,说起父亲,能想到的形容词有哪些?
高大、沉默、严厉、深沉、忙碌……
孩子读懂父亲,意味着成熟。
父亲节到了,学编程的孩子们准备给父亲送一件什么礼物呢?
我在课堂上问了同学们这个问题。
“我没有什么礼物想送给我的爸爸!我只想送他一句话:请多到学校来接我放学!每次都是妈妈来接我,同学们都以为我没有爸爸!”
听到小萱同学的话,曹老师心里一惊!
这分明是充满了小埋怨啊!
“爸爸工作太忙,不能经常来学校接你,你要理解爸爸呢!”
听到这句话,小萱的哀怨似乎并没有太缓解。
“那好吧!同学们是不是对爸爸都有很多的小疑问?但是大家一定也很爱爸爸对不对?那老师有一个提议:同学们先把父亲节礼物准备好,但是我们要用编程把自己的疑问都做成选择题,让爸爸答一答,看他能得多少分?如果得分令自己满意了,咱们再把准备好的父亲节礼物送给他,行不行?”
几个小脑袋竟不约而同地点了点。
*****合格父亲测试*****
题目是几道单选题,每道题都有题干和选项A、B、C,并提供三个A、B、C三个按钮让爸爸选择(可以用键盘或鼠标)。每道题答错时显示错误,并从总分100中扣1分;答对后才能进入下一道题。全部题目答完,显示最终的得分。
父亲节给父亲的测试题
在曹老师之前提供的编程题解题思维导图(公众号对话框回复“我会编程”领取)中,有详细的解题思路。今天我们简洁地说一下。
*****角色安排*****
这个测试的本质,是一套有多个题目的单元选择题。
我们在“题目”角色里,用T文本工具,输入下面的内容。
用同样的方法,复制多个造型,修改文字,成为多道题的题干和选项显示。为了程序整洁,多个题目我们都放在一个角色“题目”里了。
舞台上总共5个角色:
答案A、B、C角色中,各有三个造型,分别对应未做选择时、选对时、选错时。
*****解题思路*****
要想在“开始”后,先显示第一题,做出选择,错误时显示X,正确时显示V后进入下一题,全部都答完后显示最终得分,整个过程必须有对流程的控制。
当“开始”被点击时,题目应显示第一道题,A、B、C按钮要从隐藏变为显示,并且还要做好为第一道题判断的准备。
也就是说,由于这几个角色要实现“联动”,做到第几道时“题目”就要显示到第几道,A、B、C按钮的效果,也要对应于第几道。
像这种多角色要听一个指挥的情况,我们应当用“广播”。(可设置提问)
广播也分两种:同步广播和异步广播。
为了让不同题目的广播,与“题目”这个角色要显示的造型以及A、B、C按钮的功能完全对应,我们应当让它们“同步”——“广播并等待”。
*****代码实现*****
这时,在“开始”角色里,代码是这样的:
题目角色收到了不同的消息,做出不同的响应:
为了让题目正确运行,还需要在背景上添加几个变量,初始化如下:
第一(二、三)题已答这几个变量,用于记录一个题是否已经答对,主要用于在使用键盘或鼠标点击操作时,如果选对了正确选项,其他答案上的“重复执行”也可以停止了。
在答案A、B、C按钮角色上,如果当前的题,比如“第一题”,正确答案是A,那么在A上应当设置如下:
意思是说,在按下A键时,会显示“A对”的造型,这时把已答设为“是”。
如果正确答案不是A,比如“第二题”正确答案是B,那么在A上应当设置如下:
其他的角色设置也类似。大家可以算算,如果有3道题,每个A上的这种代码应当有3段。
鼠标点击的实现代码如下:
意思是如果A是某道题的正确答案的话,就换成“A对”造型,并把已答设为“是”;如果不是正确答案,就换成“A错”造型,并将得分-1。所有的A、B、C按钮都这样设置。
这样,一个用Scratch实现的“合格父亲测试”就完成了!
一定注意:用这个题目给爸爸测试,老师可不能保证同学们不挨打。
如需源代码,请在公众号对话框回复「父亲节」获取。
转发这篇文章到「K12教育、学科教育、STEAM、机器人、创客教育」的任意一个「20人以上」的微信交流群并截图,在「与非学堂」公众号后台回复截图,将获赠免费未发表的自研少儿编程课件一份!
— OVER —
与非学堂
专注青少年信息技术教育,探讨少儿编程的教与学,交流技巧、分享资源。
公众号
公众号对话框回复「HELP」更多精彩
喜欢就请「分享」「点赞」「在看」吧!