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