999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

用Visual Basic實現20以內加減法出題器

2017-09-22 10:18:36張玄同
科技傳播 2017年17期

張玄同

摘 要 利用Visual Basic中的標簽、文本框和命令按鈕等基本控件編寫“20以內加減法練習”程序。實現出題、判斷正誤、統計練習者正確率、結束練習、結束程序的功能。

關鍵詞 任意;加減法練習;開始答題;結束答題;結束程序

中圖分類號 TP3 文獻標識碼 A 文章編號 1674-6708(2017)194-0085-03

高二上學期學習《算法與程序設計》這門課,老師讓學生在Visual Basic編程環境下學習編寫一些功能簡單易實現的程序,筆者對此也很有興趣。筆者想到了小學時每天要做算術練習,如果能有程序自動為小學生出題,家長就不用為孩了買練習冊了,于是筆者試著編寫了能夠幫助小學生練習20以內任意兩個正整數的加減法練習程序。

筆者利用Visual Basic中的標簽、文本框和命令按鈕等基本控件實現了“20以內加減法練習”程序。其中自動出題的兩個數不能被修改,所以用標簽控件顯示,減號和等號也是用標簽控件顯示,而最后的答題區需要答題者在此輸入答案,文本框控件具有這個功能,所以筆者選擇了文本框控件,為了讓答題者能了解如何答題,我在下面用標簽控件給出的操作提示。程序運行界面如圖1所示。

當練習者單擊“開始答題”按鈕時程序隨機出題,這時練習者可以在等號后的答題區輸入答案,如果輸入錯誤可以進行修改,確認答案正確后,敲鍵盤上的“Enter”鍵提交答案,程序會對練習者的答案進行正誤判斷并把結果顯示在列表框中,以供練習者查看,并自動進入下一題的練習。如果練習者想停止答題,可單擊“結束答題”按鈕,程序會在列表框下顯示練習者本次練習的情況統計,即共做了幾題,對了幾題,錯了幾題,如圖2所示。如需繼續練習,可再次單擊“開始答題”按鈕;如果要結束程序運行,可單擊“結束程序”按鈕。程序代碼如下:

因為答題總數、答對的題目數和答錯題目數要被兩個事件過程用到,所以要在通用代碼段變聲明這4個變量:

Dim t As Integer, y As Integer, n As Integer

答題者單擊“開始答題”按鈕,程序就開始第一次隨機出題。程序的隨機出題功能是利用了Visual Basic中的隨機函數Rnd來實現的,其中包括運算數的隨機出現和加減法運算符的隨機出現。為了做到被減數一定要不小于減數,筆者用了一個循環語句(Do While…Loop),當被減數小于減數時就重新隨機產生減數,直到符合減法運算的要求為止。“開始答題”按鈕(Command1)的單擊事件過程代碼如下:

Private Sub Command1_Click()

Dim c As Integer

t = 0

y = 0

n = 0

List1.Clear

Label5.Caption = “”

Randomize

Label1.Caption = Int(Rnd * 21)

Label3.Caption = Int(Rnd * 21)

c = Int(Rnd * 10) + 1

If c Mod 2 = 0 Then

Label2.Caption = “+”

Else

Label2.Caption = “-”

End If

If Label2.Caption = “-” Then

Do While Val(Label1.Caption) < Val(Label3.Caption)

Label3.Caption = Int(Rnd * 21)

Loop

End If

Text1.SetFocus

End Sub

如果答題者想中止練習,可以單擊“結束答題”按鈕。結束答題的同時程序會給出答題的正誤情況及正確率。“結束答題”按鈕(Command2)單擊事件過程代碼:

Private Sub Command2_Click()

Dim p As Single

p = y / t * 100

Label5.Caption = "共" & t & "道題," & "對了" & y & "道題,錯了" & n & "道題。" & "正確率" & p & "%"

Label1.Caption = “”

Label3.Caption = “”

End Sub

如果答題者想停止練習,可以單擊“結束程序”按鈕,“結束程序”按鈕(Command3)代碼:

Private Sub Command3_Click()

End

End Sub

答題者輸入完答敲回車鍵表示提交答案。輸入答案和敲回車鍵都是按鍵的動作,所以用到文本框的按鍵事件過程。那么按鍵的動作是在輸入答案還是結束答題呢?就要看答題者按的是否是“回車”鍵,鍵盤上的每一個鍵對應的都有編碼,回車鍵的編碼是13,所以我用if語句判斷被按下鍵的編碼是否是13,如果是13,再判斷答案是否正確,如果答正確就把各標簽及文本框的內容連接成一個字符串最后再串上"√",否則在最后串上”×”。t表示答題總數,y表示答對的題數,n表示答錯的題數,每完成一道題,答題的總數就t加上1,如果答對了y的值就加上1,如果答錯了n的值就加上1。由于此題已完成,所以要緊接著隨機出下一道題,這部分代碼和“開始答題”按鈕的出題部分代碼相同。文本框的按鍵事件過程代碼:

Private Sub Text1_KeyPress(KeyAscii As Integer)endprint

If KeyAscii = 13 Then

If Label2.Caption = “+” Then

If Val(Label1.Caption) + Val(Label3.Caption) = Val(Text1.Text) Then

List1.AddItem Label1.Caption & Label2.Caption & Label3.Caption & "=" & Text1.Text & "√"

y = y + 1

Else

List1.AddItem Label1.Caption & Label2.Caption & Label3.Caption & “=” & Text1.Text & “×”

n = n + 1

End If

Else

If Val(Label1.Caption) - Val(Label3.Caption) = Val(Text1.Text) Then

List1.AddItem Label1.Caption & Label2.Caption & Label3.Caption & "=" & Text1.Text & "√"

y = y + 1

Else

List1.AddItem Label1.Caption & Label2.Caption & Label3.Caption & “=” & Text1.Text & “×”

n = n + 1

End If

End If

Text1.Text = “”

Randomize

c = Int(Rnd * 10) + 1

If c Mod 2 = 0 Then

Label2.Caption = “+”

Else

Label2.Caption = “-”

End If

Label1.Caption = Int(Rnd * 21)

Label3.Caption = Int(Rnd * 21)

If Label2.Caption = “-” Then

Do While Val(Label1.Caption) < Val(Label3.Caption)

Label3.Caption = Int(Rnd * 21)

Loop

End If

t = t + 1

End If

End Sub

非常感謝老師帶領學生認真學習了這門課,讓筆者對Visual Basic程序設計有了初步的認識。由于筆者學習Visual Basic編程時間不長,水平有限,對很多知識還沒有掌握,可能程序還有需要改進的地方,筆者會在以后的學習中繼續努力。希望筆者設計的這個程序能夠幫助到需要的人。

參考文獻

[1]信息技術(選修1算法與程序設計)[M].上海:上海科技教育出版社,2017.

[2]沈祥玖.VB程序設計[M].2版,北京:高等教育出版社,2003.endprint

主站蜘蛛池模板: 久久精品午夜视频| 91精品国产丝袜| 97精品伊人久久大香线蕉| 欧美日韩国产系列在线观看| 亚洲专区一区二区在线观看| 欧美人与牲动交a欧美精品| 秘书高跟黑色丝袜国产91在线| 精品少妇人妻无码久久| 久久99热这里只有精品免费看 | 精品少妇人妻无码久久| 久操中文在线| 三区在线视频| 欧美有码在线观看| 91亚洲免费视频| 亚洲一区二区三区在线视频| 免费看美女毛片| 国产精品福利一区二区久久| 亚洲国产精品一区二区高清无码久久| 伊人精品视频免费在线| 久久精品人人做人人| 国产精品久久久久无码网站| 欧美亚洲日韩不卡在线在线观看| 亚洲视频四区| 欧美亚洲一区二区三区在线| 亚洲精品在线观看91| 久久免费观看视频| 成人无码区免费视频网站蜜臀| 免费看一级毛片波多结衣| jijzzizz老师出水喷水喷出| 亚洲欧美成人综合| 欧美国产另类| 国产成人啪视频一区二区三区| 97国产一区二区精品久久呦| 午夜福利在线观看成人| 国产对白刺激真实精品91| 亚洲日韩欧美在线观看| 国产精欧美一区二区三区| 亚洲性日韩精品一区二区| 国产一级二级在线观看| 成人一级免费视频| 激情爆乳一区二区| 日本国产在线| 国模在线视频一区二区三区| 色综合网址| 欧洲极品无码一区二区三区| 亚洲国产中文精品va在线播放 | 欧美日韩国产成人高清视频 | 国产精品午夜福利麻豆| 亚洲第一成年网| 亚洲av无码人妻| 日韩AV手机在线观看蜜芽| 国产成人乱无码视频| 国产网站在线看| a级毛片一区二区免费视频| 91色在线观看| 亚洲美女视频一区| 五月婷婷精品| 青青草国产免费国产| 中国精品久久| 在线视频一区二区三区不卡| 91福利片| 熟女成人国产精品视频| 无码综合天天久久综合网| 国产喷水视频| 熟妇无码人妻| 亚洲免费福利视频| 亚洲欧美成人| 色首页AV在线| 日本a∨在线观看| 一区二区三区四区精品视频| 日韩福利在线观看| 国产成人精品在线| 青青草原国产| 免费看美女自慰的网站| 国产SUV精品一区二区6| 专干老肥熟女视频网站| 国产自在自线午夜精品视频| 亚洲日韩每日更新| 国产91高跟丝袜| 一级一级特黄女人精品毛片| 一级毛片无毒不卡直接观看 | 国产91九色在线播放|