S4E06随机出练习,口算不再是难题!
在前面几期学习中我们知道了GGB 能够很好地展示图形变化的效果,随着上节课的“随机模拟实验”的教程中,我们又发现了一个新技能“区间随机数”,GGB可以随机出数。等一下,这个好像就可以用于出计算的题目了,只要我们设定数字的范围就可以随机出题啦~同学们,你们又有“大量”的数学题可以用于练习口算了,老师们也可以根据一些教学的目标,随机出几道课堂小测了。今天我们以“平方练习”为例,看看这样的小课件改如何制作。
已经学习过“区间随机数”的同学们,可以试着自己先尝试做一做,小编试了两个小时,大功告成的那一刻就迫不及待的来和大家分享啦~
效果图如下:

今天这节课,你将收获:
1. 如何创建一个随机出现的数;
2. 计算机如何批阅答案。
首先我们来拆解问题,首先需要随出题;其次,有了题目后,外部需要输入答案,计算盘判断正误;计算机判断完正误后,给出判断结果并展示结果;如果换一个人重新做题的话,展示的结果重新开始计算。
01 随机出题
A. 产生一个随机数
随机出题的关键就在于【随机】,只要我们能产生一个“随机的数”那么就迎刃而解了。
RandomBetween( <Minimum Integer>, <Maximum Integer> )【区间随机数(最小值,最大值)】
如果我们想最小值和最大值都可以进行调节,我们该如何设置呢?
1. 定义最小值和最大值的范围【如何确保最大值的范围大于最小值呢?答案见①】
2. 定义一个区间随机数n
3. 显示题目
4. 随机数我们已经产生出来了,是n,那么怎么显示出来呢?可以使用【文本功能】-在高级中就可以把动态变化的n展示出来。平方我们用^2来表示。【操作见答案②】
5. 美化一下【你知道怎么美化滑动条吗?答案见③】
效果图如下:

B. 出题按钮
上面的效果中,只有我们拖动一次滑动条,才会产生一个随机数,这样很麻烦,所以,我们可以新建一个“开关”,只要我们点击,就会产生一个随机数,那么这个开关就可以通过【按钮】来实现。
我们通过给按钮书写一个动作(产生随机数n),那么只要我们按一次,就会有一个随机数。新建一个按钮吧~
你可以自己自己编辑这个按钮吗?【答案见④】
效果如下:

或者可以给n赋值,n的取值是在a和b之间的一个区间随机数。
SetValue( <Object>, <Object> )【赋值(被赋值的数,赋予的数)】
你可以写出指令吗?【答案见⑤】
02 验证答案
如何验证答案呢?首先需要输入一个答案,然后系统有一个正确答案,二者进行匹配,正确的话就正确的数量+1,反之错误的数量+1。你可以先尝试着自己做一下吗?
A. 设置正确答案
我们可以再设置一个参数为正确答案,命名为ans。【答案见⑥】
B. 输入答案
输入的话就需要一个输入框,我们把输入框里面的数字设置为input,二者进行关联。也就是我们输入的数字就是input的值。【答案见⑦】
效果如下:

C.进行二者的匹配
我们发现,经过关联,我们输入的数字就是input的值。那么如何判断呢?我们可以设置,如果答案正确,我们可以让画面显示正确。那么也就是,当我们在input中输入完之后,就可以进行判断,如果正确了,我们可以让正确的数量+1。那么我们就先需要建立一个right的参数,然后给right赋值。
这里需要有一个判断,就是input是否等于right,我们可以使用If来判断。
If( <Condition>, <Then>, <Else> )【如果(条件,结果,否则的话结果是)】
你可以再给input这个输入框建立一个需要执行的脚本吗?当然了,首先你需要先建立一个参数right,并且ta是从0开始的。【答案见⑧】
效果如下:

D. 美化一下吧~
比如我们可以让input不出现,输入框的颜色做一些调整,依旧是在老地方修改。
03 显示结果
A. 设置错误数和正确率
上面我们已经可以判断输入的结果是否正确,并且正确就right+1。你可以自己写计算错误数吗?以及正确率?【答案见⑨】
tips:不等于用!=来表示
B. 显示正确数,错误数和正确率
显示这几个数的结果同上A3 显示题目操作。(注意:需要输入正确率的计算公式)【答案见⑩】
效果如下:

在初始值时,right+wrong的和为0,所以我们可以给right规定如果和为零时,正确率为0即可,详细操作见视频。
C. 重置
如果我们不需要重新计数,那么正确和错误的个数都要归为零,那么我们可以通过一个按钮来实现。也就是当我们点击按钮时,正确和错误数都变为0,也是给二者赋值为0。【答案见⑩①】
效果如下:

你还可以怎么优化呢?
1. 每次都需要点击出题,能否在一到题做完之后就出下一题呢?
2. 能否直接用“√”和“×”来进行批改呢?
3. ……
小编期待大家的作品!
答案区
①
设置最大值的范围的最小值为最小值+1(能读懂算你厉害)文字表达可能比较清楚,比如设置最小值的范围为1至20;最大值的范围为a+1至30.
②

③
美化都在【设置】里面
④

⑤
赋值(n,RandomBetween(a,b))
⑥
ans=n^2
⑦
设置滑动条 input=0-1000
新建输入框,和input进行关联
⑧
设置滑动条right 从0-20
设置输入框执行的脚本:赋值(right,如果(input==ans,right+1,right))
⑨
设置滑动条wrong
设置输入框执行的脚本:赋值(wrong,如果(inpu!t=ans,wrong+1,wrong))
⑩
per=right/(right+wrong)
⑩①
赋值(right,0)
赋值(wrong,0)
参考资料
【GGB】https://www.geogebra.org/classic/ryysyrzh
【Bili】https://www.bilibili.com/video/av57899259/