蔣維
關(guān)鍵詞:GeoGebra;翻頁(yè);隨機(jī)數(shù);指令
1GGB分頁(yè)顯示對(duì)象
1.1利用顯示條件設(shè)置翻頁(yè)
在對(duì)象的顯示條件中利用邏輯語(yǔ)言進(jìn)行頁(yè)面的定位,創(chuàng)建一個(gè)整數(shù)數(shù)字滑桿,即整數(shù)變量n,最小值設(shè)為1,最大值可根據(jù)頁(yè)數(shù)的需求進(jìn)行設(shè)置。當(dāng)n=1時(shí),在當(dāng)前繪圖區(qū)制作出需要顯示的對(duì)象,選中所有對(duì)象后點(diǎn)鼠標(biāo)右鍵打開(kāi)屬性框,在高級(jí)標(biāo)簽下的顯示條件一欄設(shè)置顯示條件:n=1,此頁(yè)面制作完成。拖動(dòng)n,使n=2,繪圖區(qū)所有對(duì)象清空,此時(shí)可在n=2的界面上制作出需要顯示的對(duì)象,制作完成后同樣選中n=2界面上的所有對(duì)象,設(shè)置顯示條件為n=2,按上述方法重復(fù)設(shè)置剩余頁(yè)面即可。制作完成后就可拖動(dòng)變量n進(jìn)行界面的切換,即實(shí)現(xiàn)翻頁(yè)功能。如果拖動(dòng)滑動(dòng)條n進(jìn)行翻頁(yè)不太好控制,可以制作兩個(gè)控制按鈕——“下一頁(yè)”和“上一頁(yè)”,設(shè)置“下一頁(yè)”按鈕的腳本:n=n+1,“上一頁(yè)”按鈕的腳本:n=n-l,按鈕設(shè)置好后隱藏變量n即可實(shí)現(xiàn)用按鈕控制翻頁(yè)。
1.2利用顯示/隱藏圖層設(shè)置翻頁(yè)
在GeoGebra中,對(duì)象的顯示圖層數(shù)值必須是在數(shù)集{0,1,…,9}中的整數(shù),0表示最下面的圖層,9表示最上面的圖層[1]。利用圖層設(shè)置翻頁(yè)創(chuàng)建一個(gè)整數(shù)數(shù)字滑桿m,m的取值范圍只能是[0,9],所以此方法制作的頁(yè)數(shù)最多為10頁(yè)。當(dāng)m每取一個(gè)整數(shù)值,在當(dāng)前頁(yè)面上繪制出相對(duì)應(yīng)的對(duì)象,繪制完成后選取所有繪制對(duì)象,右鍵打開(kāi)屬性框選擇高級(jí)標(biāo)簽,在高級(jí)標(biāo)簽下選擇圖層數(shù),此時(shí)選擇的圖層數(shù)應(yīng)與m的值一致,如m=1圖層設(shè)為1,m=2圖層設(shè)為2,以此類推。以上圖層設(shè)置完成后并不能拖動(dòng)變量m進(jìn)行翻頁(yè),此處還需要用到兩條腳本指令:顯示圖層(<圖層編號(hào)(0~9)>),使指定圖層上的所有對(duì)象處于顯示狀態(tài);隱藏設(shè)置圖層(<圖層編號(hào)(0~9)>),使所有在指定圖層上的對(duì)象不可視[2]。利用圖層設(shè)置翻頁(yè)一般需要借助其他對(duì)象把顯示圖層和隱藏圖層兩條指令寫入輔助對(duì)象的腳本中,利用對(duì)象的腳本更新來(lái)控制m值的變化和顯示/隱藏圖層指令的執(zhí)行。創(chuàng)建兩個(gè)控制按鈕“下一頁(yè)”和“上一頁(yè)”,在“下一頁(yè)”按鈕的腳本中寫入腳本:隱藏圖層(m),m=m+1,顯示圖層(m);在“上一頁(yè)”按鈕的腳本中寫入腳本:隱藏圖層(m),m=m-1,顯示圖層(m)。使用顯示/隱藏圖層設(shè)置翻頁(yè)時(shí)需要注意翻頁(yè)按鈕的圖層不能設(shè)定為m取過(guò)的值,否則當(dāng)取得某頁(yè)面圖層m時(shí)翻頁(yè)按鈕也會(huì)被隱藏,如有8頁(yè)頁(yè)面,m可以取值1~8,此時(shí)按鈕的圖層數(shù)可以設(shè)為0或9,m如果取值0~7,則按鈕圖層可以設(shè)為8或9,同理,如果一個(gè)對(duì)象不出現(xiàn)在任何界面上,此對(duì)象的圖層設(shè)定也只能取m未取過(guò)的值。
2文中SetValue()與等號(hào)的區(qū)別
SetValue()與等號(hào)在GeoGebra中都可以表示取值的意思,但等號(hào)的作用除了取值外還有定義的作用,包括定義變量名,如A=(1,1)表示定義了一個(gè)點(diǎn)A并取得坐標(biāo)值為(1,1),而SetValue(變量,值)只表示賦值,沒(méi)有定義作用,參數(shù)中的變量必須是先定義過(guò)的自由變量,否則使用時(shí)會(huì)提示是否定義一個(gè)數(shù)值變量或提示錯(cuò)誤未定義變量。SetValue()與等號(hào)在取值方面的區(qū)別為SetValue()賦值的意思是在這一瞬間賦值給變量,而用于定義的等號(hào)則表示等號(hào)兩邊的值永遠(yuǎn)相等。例如,在指令欄中依次輸入:a=1,b=2,c=j,b=a+l,SetValue(c,a+l),當(dāng)把o值變?yōu)?時(shí),6=a+l和SetValue(c,a+1)執(zhí)行的結(jié)果是6的值為3,c值為2,把a(bǔ)值變?yōu)?時(shí),b和c的結(jié)果值分別為4和2,在a值發(fā)生改變的過(guò)程中,6值會(huì)跟著動(dòng)態(tài)變化,而c值則不會(huì)跟著改變,在GeoGebra中可以認(rèn)為等號(hào)是動(dòng)態(tài)賦值,而SetValue()是靜態(tài)賦值。
3文中RandomBetween()和GetTime()的作用
本文主要實(shí)現(xiàn)九九乘法算式的練習(xí),利用RandomBetween(
Integer>,
本文在進(jìn)行算式練習(xí)時(shí)制作了一個(gè)計(jì)時(shí)器,計(jì)時(shí)器是由GetTime()/系統(tǒng)時(shí)間()來(lái)實(shí)現(xiàn)的。GetTime()創(chuàng)建一個(gè)當(dāng)前系統(tǒng)時(shí)間的列表:毫秒、秒、分、時(shí)(0~23)、日、月(1~12)、年、月份(文本格式)、星期(文本格式)、星期日數(shù)(1=周日、2=周一,以此類推),如系統(tǒng)時(shí)間()返回{647, 59, 39, 20, 28,6,2022’’February¨,¨Monday¨,2}等列表。本文制作的計(jì)時(shí)器是把由GetTime()獲取的列表中的秒數(shù)和分?jǐn)?shù)提取出來(lái)一同轉(zhuǎn)換成一個(gè)總秒數(shù),利用變量的更新來(lái)更新系統(tǒng)時(shí)間,獲取相對(duì)應(yīng)的計(jì)數(shù)秒數(shù),實(shí)現(xiàn)限時(shí)和計(jì)時(shí)功能。
4程序的設(shè)計(jì)與實(shí)現(xiàn)
4.1設(shè)置變量
指令欄依次輸入n=1,a=1,b=1,i=1,c=1,1={},n用于存放練習(xí)題總數(shù),a用于存放做題限制時(shí)間,6用于設(shè)置動(dòng)畫更新系統(tǒng)時(shí)間,以進(jìn)行倒計(jì)時(shí)控制等,i用于記錄當(dāng)前所做的總題數(shù),c用于存放用戶輸入的題目答案,1用于記錄做過(guò)的題目和對(duì)錯(cuò)判斷結(jié)果,以上變量的初始值可以任意取值,因不需要顯示在任何界面上,所以設(shè)置的圖層均為0,并隱藏對(duì)象。
4.2設(shè)置界面一
指令欄依次輸入textl=¨輸入練習(xí)數(shù)量和練習(xí)時(shí)間¨,text2=¨題¨,text3=¨分鐘¨,InputBoxl=輸入框(n),InputBox2=輸入框(a),buttonl=按鈕(¨$開(kāi)始做題$¨),在屬性框中把InputBoxl和InputBox2的標(biāo)題名分別設(shè)為$練習(xí)數(shù)量$和$練習(xí)時(shí)間$。調(diào)整各對(duì)象在界面一上的相對(duì)位置,把界面一上的所有對(duì)象選中,打開(kāi)屬性框,在高級(jí)選項(xiàng)中把所有對(duì)象的圖層設(shè)為1。此界面上用戶可設(shè)置做題數(shù)量和做題時(shí)間,點(diǎn)擊“開(kāi)始做題”按鈕進(jìn)入界面二進(jìn)行題目練習(xí)。
打開(kāi)“開(kāi)始做題”按鈕的腳本編輯,在¨單擊時(shí)¨標(biāo)簽下輸入以下腳本:
刪除(11)\\刪除上一次的做題記錄
設(shè)置圖層(11,0)\\設(shè)置11的圖層為0
text_{用時(shí)}=¨\\清空用時(shí)提示
i=1\\做題題號(hào)重計(jì)為1
t1=系統(tǒng)時(shí)間()\\獲取當(dāng)前系統(tǒng)時(shí)間
t1=2=兀素(t1,2)\\獲取當(dāng)前系統(tǒng)時(shí)間的秒數(shù)
t1_3=兀素(t1,3)\\獲取當(dāng)前系統(tǒng)時(shí)間的分?jǐn)?shù)
t-{結(jié)束}=t1_3冰60+t1_2+a術(shù)60\\設(shè)置倒計(jì)時(shí)結(jié)束時(shí)間
隱藏圖層(1)\\隱藏第一界面
顯示圖層(2)\\進(jìn)入第二界面
啟動(dòng)動(dòng)畫(b)\\更新變量b的值,更新系統(tǒng)時(shí)間等
m_1=RandomBetween(1,9)\\隨機(jī)取得第一個(gè)乘數(shù)
m_2=RandomBetween(1,9)\\隨機(jī)取得第二個(gè)乘數(shù)
4.3設(shè)置界面二
打開(kāi)變量b的腳本編輯,在“更新時(shí)”標(biāo)簽下輸入以下腳本:
t2=系統(tǒng)時(shí)間()\\獲取更新的系統(tǒng)時(shí)間
t2=2=元素(t2,2)\\獲取更新系統(tǒng)時(shí)間的秒數(shù)
t2=3=元素(t2,3)\\獲取更新系統(tǒng)時(shí)間的分?jǐn)?shù)
t一{開(kāi)始}= if(t2_3>=t1_3,t2—3冰60+t2—2,t2—3
4.4設(shè)置界面三
指令欄中依次輸入text{提示}=已做完!,text_{用時(shí)}=,button4=按鈕(¨$查看結(jié)果),button5=按鈕(“$重新開(kāi)始$”)。調(diào)整各對(duì)象在界面三上的相對(duì)位置,把界面三上所有對(duì)象選中,打開(kāi)屬性框,在高級(jí)選項(xiàng)下把所有對(duì)象的圖層設(shè)為3,text_{提示}和text_{用時(shí)}初始值可以任意設(shè)置。此界面會(huì)根據(jù)用戶做題情況進(jìn)行提示,用戶可點(diǎn)擊“查看結(jié)果”按鈕查看做題記錄包括做題時(shí)間和做題正誤,點(diǎn)擊“重新開(kāi)始”按鈕可返回至界面一。
\\如果未練習(xí),設(shè)置提示語(yǔ)text_{用時(shí)}=“未做練習(xí)題查看不了結(jié)果”
打開(kāi)“重新開(kāi)始”按鈕的腳本編輯,在“單擊時(shí)”標(biāo)簽下輸入以下腳本:
隱藏圖層(3)\\隱藏界面三
顯示圖層(1)\\顯示界面一
5結(jié)束語(yǔ)
本文以九九乘法練習(xí)為例進(jìn)行翻頁(yè)效果的設(shè)置,也可在此基礎(chǔ)上設(shè)計(jì)隨機(jī)的加減乘除等更為復(fù)雜的運(yùn)算,在界面內(nèi)容上也可更完善,如在界面二上可增
加一個(gè)“返回首頁(yè)”按鈕等。
計(jì)算機(jī)應(yīng)用文摘·觸控2022年23期