创建序列 无效数字_用GeoGebra做个数字键盘!还可随意插入到其他ggb文件

d63b2f09899bcd7338162ed52b0e86f7.png

如需源文件,请参照链接的文末:

用GeoGebra做个数字键盘!还可随意插入到其他ggb文件​mp.weixin.qq.com
e3dd4130c7ed6976632d553b7892bacf.png

我们知道GeoGebra除了可以在电脑上用,还可以在手机、平板上用!那么,当制作了个小练习,示例如下。

fad4792abe4728df4dc43eee5e346d62.png

这些输入框,若在电脑上输入很方便!但是——在手机或者平板上操作,每次都需要先调出数字键盘!

那么,我们如果自行制作一个数字键盘,可以通过点击键盘上的数字键来输入答案,岂不是更方便?

来看看用GeoGebra制作数字键盘的效果:

2313c8404e1b25b36169cfc42bb4707f.gif

可输入小数、负数等,还有删除所有数字的功能,也可以逐个数字删除。

还可以将其插入到之前做好的GeoGebra文件中:

36d7c135d0d0acc72f2aab71acf42b7d.png

再稍作修改,就可配合作答:

ef2abbd705491493c2d6b32862cbe5dc.gif

效果不错吧!而且最棒的是:这个数字键盘可以直接插入到已经做好的GeoGebra文件中,省心省力!无需每次都重复制作。

赶紧来看看数字键盘是怎么制作的!而GeoGebra中,又是怎么插入.ggb文件的?

eeafedeccfe7bdcd2f7dc7e8a1de7eb9.png

GGB插入.ggb文件

假设要在“已有文件.ggb”中插入“一个圆.ggb”,可以怎么做呢?

只需打开“已有文件.ggb”后,依次选择文件——打开——一个圆.ggb,接着,是最关键的一步:选择文件类型为插入文件

用插入文件这一功能,有什么需要注意的吗?

a3fc4577ccbc88c6758e7c413d029e8c.png

由上图,可发现:被插入文件的对象名称都改变了——名称多了个下标1。而当前文件的对象名称则不会改变。这一点很重要!

行序(<表格区单元格>)
Row(<Spreadsheet Cell>)

比如,行序(A1)返回数值1。但是——若是多了个下标,这指令就无效了——行序的参数必须是表格区单元格(即大写字母后跟一个正整数)。

又比如,已有对象A1,A2,A3,要创建列表{A1,A2,A3}可利用A1:A3迅速得到。但是——若是多了个下标,则无效!

由此,可看到插入文件令我们无需重复制作,不过——在制作的时候,就要考虑到若是对象名称多了个下标1,这样的操作或语法有问题吗!

eac50a718ef2388547c42fa84b1ae61c.gif

制作数字键盘

数字键盘,其实就是生成独立的格子,并且格子都有相应的单击时脚本。其思路、部分指令,与《哪里需要立方体就点哪里》类似,不再赘述。

■ 先作一个自由点,以便控制数字键盘的移动:

A = (1, 1)

■ 再作出4×4的格子:

l1 =扁平列表(序列(序列(多边形(A + (p, q), A + (p, q) + (1, 0), 4), p, 0, 3.6, 1.2), q, 0, 3.6, 1.2))

注:扁平列表(Flatten)、序列(Sequence)、多边形(Polygon)

c0361cfb1a9c44b2d4dfc6bbf72b346a.png
指令解释,请点击上面的链接

■ 构造文本,作为点击数字键盘时,显示相应的文本。于是,定义:

text1 = ""

■在表格区A1、A2处分别输入12,并下拉填充至A16。

■在B1处,输入=元素(l1, A1)

■在B1的单击时脚本输入赋值(text1,text1+"")

■下拉B1至B16填充。

■ 修改B1至B16的脚本:

311e24d833ff30f4c9b07915e71f832d.png
其他数字键的脚本请自行输入

以B1的脚本赋值(text1,text1+"0")为例,也就是在已有text1的后面摆上一个“0”,并赋值给text1。

■ 而确定键,即B4的单击时脚本先不写。

■ 清空键B8的单击时脚本为text1=""

■ 删减键B12的单击时脚本为赋值(text1,提取(text1,1,长度(text1)-1))

B12的脚本含义:在已有的text1中,提取出第一个倒数第二个的所有文本,并赋值给text1。

注:赋值(SetValue)、提取(Take)、长度(Length)

■ 最后,显示键盘上的文字:

l2 = 映射(文本(p, (-0.15, -0.22) + 形心(q)), p, 0…9, q, {B1, B5, B6, B7, B9, B10, B11, B13, B14, B15})

l3 = 映射(文本(p, (-0.28, -0.22) + 形心(q)), p, {"00", "•"}, q, {B2, B3})

l4 = 映射(文本(p, (-0.38, -0.16) + 形心(q)), p, {"确定", "清空", "删减", " _¯"}, q, {B4, B8, B12, B16})

映射( <表达式>, <变量1>, <列表1>, <变量2>, <列表2>, ... )

映射(Zip)就是让变量1依次取列表1中的元素代入表达式,变量2依次取列表2中的元素代入表达式。

以l3为例,l3相当于{文本("00", (-0.28, -0.22) + 形心(B2)), 文本("•", (-0.28, -0.22) + 形心(B3))}

注:文本(Text)、形心(Centroid)

4c9fac581de0a15bcf72577d376b4532.png
直接用减号,显示出来是比较短的横线,效果不佳

至此,数字键盘就大功告成了:

2313c8404e1b25b36169cfc42bb4707f.gif

bd694105dea578cb629a268bdf911269.png

插入到其他ggb文件的示例

前面演示过插入文件,那么,插入后,如何更好地发挥其作用呢?

● 将点击数字键盘得到的文本text1_{1}与答案输入c关联起来,于是,在确定键的单击时脚本输入:

赋值(c,text1_{1})

如果(c!=T,赋值(m,m+1))注:第二条是复制答案输入框的脚本。

● 点击“下一题”时,需要先清空文本,于是,在“下一题”的单击时脚本输入:

运行单击脚本(B8_{1})

注:也可直接复制清空键的单击脚本。运行单击脚本(RunClickScript)

4772b9590ba8e300c7edc3c3b5db4ad6.png

● 最后,配合原有文件,修改数字键盘的显示条件:

bf2ef455466e7320e889f81a7e1cddd3.png

至此,大功告成:

ef2abbd705491493c2d6b32862cbe5dc.gif

结语

数字键盘除了由GeoGebra文本入手,还可从算术运算入手,也就是除了赋值(text1,text1+"1"),还可以这么做:

  1. 引进数值a=0
  2. text1=""a
  3. 数字1键的单击脚本即可写为:赋值(a,10 a+1)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值