Tài liệu tham khảo chuyên ngành tin học lập trình Visual basic
Trang 1A.Phần Mở Đầu
I Lý do chọn đề tài
Ngày nay với sự chuyển hướng của ngành giáo dục đang chuyển dần từ hình thức thi viết sang thi trắc nghiệm nhằm nâng cao khả năng học tập và kỹ năng thực hành bộ môn cho học sinh có thể vận dụng những kiến thưc mình tiếp thu được một cách linh hoạt và hiệu quả nhất.
Đề tài này giúp ích cho việc giảng dạy và học tập của giáo viên và học sinh trường về kỹ năng, phương pháp học tập và giảng dạy theo hinh thức học tập mới.Giúp cho học sinh vận dụng các kiến thức đã học theo nhiều cách tư duy như:Phương án loại trừ,chọn phương án đúng nhất,………Giúp giáo viên có thể đánh giá chính xác được năng lực và khả năng tiếp thu kiến thức củahọc sinh.
Với đề tài này giúp em có thể nắm vững hơn về kỹ năng lập trình cũng như sử dụng các lênh xử lý chương trình được thành thục hơn để nâng cao khả năng của bản thân về bộ môn Visual basic và khả năng vận dụng của nó trong từng trường hợp, cụ thể như trong bài toán về quản lý trắc nghiệm mà em thực hiên.
II Mục đích và nhiệm vụ nghiên cứu
+Đưa ra câu hỏi và đáp án trả lời chính xác.
+Cấu trúc chương trình để xây dưng nên chương trình quản lý trăc nghiệm này.
Trang 2III Đối tượng và phạm vi nghiên cứu.
IV Phương pháp nghiên cứu.
1.Nghiên cứu tìm hiểu thực tiễn.
-Tham khảo ý kiến của một số giáo viên và học sinh.-Tham khảo qua sách vở về bộ môn của các môn học
2.Nghiên cứu lý luận,chủ trương,chính sách,quy chế
-Nghiên cứu chủ trương của bộ giào dục, của nhà trường.-Quy chế ra đề thi và chấm bài thi.
-Các tài liệu bộ môn phù hợp.
3.nghiên cứu tài liệu.
-Sách giáo khoa, sách bài tập, sách nâng cao, một số giáo án của giáo viên về bộ môn mà mình thực hiện.
4.Nghiên cứu cái đặt chương trình
Trang 3V Đóng góp của đề tài.
1.Đóng góp thưc tế của đề tài.
Đề tài này giúp ích cho việc giảng dạy và học tập của giáo viên và học sinh về kỹ năng,phương pháp học tập và giảng dạy theo hình thức học tập mới.Giúp cho học sinh có thể vân dụng các kiến thức đã học theo nhiều cách tư duy như:phương án loại trừ,chọn phương án đúng nhất…….Giúp giáo viên có thể đánh giá chính xác được năng lực và khả năng tiếp thu kiến thức của học sinh.
2.Lợi ích của đề tài đối với bản thân
-Nắm vững và thành thạo hơn về kiến thúc lập trình trong học tập và vận dụng thực tế.
Xin chân thành cảm ơn thầy LÊ ĐỨC KHIÊM đã tận tình chỉ dạy, hướng dẫn và các bạn đã giúp đỡ tôi hoàn thành chương trình này !
Trang 4B.Phần nội dung
I Biểu Đồ Phân Cấp Chức Năng.
Hinh 1: Bieu do phan cap chuc nang
II Bieu do luong du lieu
Các biểu đồ luồng dữ liệu có tác động mô tả sự hoạt động của hệ thốngChú thích
có trao đổi thông tin với hệ thống Chức năng xử lý làm biến đổi thông tin Luồng dữ liệu vào hay ra của hệ thống Nơi lưu trữ thông tin cần cho hệ thống.
Toán HọcVật LýVăn Học
Lịch Sử
GameCa nhạc
Thoát
Trang 51 Biểu đồ luồng dữ liệu mức khung cảnh.
Thể hiện chức năng tổng thể, các luồng thông tin vào, mối quan hệ của hệ thống với tác nhân ngoài.
Người dùng
file hướng dẫnVăn học
Người dùng
Vật lýKết quả trắc nghiệm
Toán họcLịch sử
Hướng dẫn
Trang 6Giao Diện Form Frmchinh
Code Form frmchinhPrivate Sub dabong_Click()
Dim g
g = Shell("Chinh phuc ai tinh.exe", vbNormalFocus)End Sub
Trang 7Private Sub gt_Click()Dim g
g = Shell("Tinh xin chang phai.exe", vbNormalFocus)End Sub
Private Sub mnuhd_Click()frmhuongdan.Show
frmchinh.HideEnd Sub
Private Sub mnuly_Click()frmvatly.Show
frmchinh.HideEnd Sub
Private Sub mnusu_Click()frmlichsu.Show
frmchinh.HideEnd Sub
Private Sub mnuthoat_Click()End
Trang 8Frmtoan.Showfrmchinh.HideEnd Sub
Private Sub mnuvan_Click()frmvanhoc.Show
Private Sub ol_Click()Dim g
g = Shell("Xa vang.exe", vbNormalFocus)End Sub
Private Sub quasong_Click()Dim g
g = Shell("picachu_2005.exe", vbNormalFocus)End Sub
Private Sub Timer1_Timer()Dim x As String
Dim y As String
x = Left(frmchinh.Caption, 1)
Trang 9y = Right(frmchinh.Caption, Len(frmchinh.Caption) - 1)frmchinh.Caption = y + x
End If
If optchon(1).Value Thenketqua(lt) = "B"
End If
Trang 10If optchon(2).Value Thenketqua(lt) = "C"
End If
If optchon(3).Value Thenketqua(lt) = "D"
End If
If lt > 1 Thenlt = lt - 1Else
MsgBox ("Day la cau dau tien.") Beep
End If
Lbl2(0).Caption = "C©u " & CStr(lt) & ":"Lbl2(1).Caption = cau(cauhoi(lt), 1)
Lbl2(2).Caption = cau(cauhoi(lt), 2)Lbl2(3).Caption = cau(cauhoi(lt), 3)Lbl2(4).Caption = cau(cauhoi(lt), 4)Lbl2(5).Caption = cau(cauhoi(lt), 5)Select Case ketqua(lt)
Case "A": optchon(0).Value = TrueCase "B": optchon(1).Value = TrueCase "C": optchon(2).Value = TrueCase "D": optchon(3).Value = TrueCase Else:
optchon(0).Value = Falseoptchon(1).Value = Falseoptchon(2).Value = Falseoptchon(3).Value = FalseEnd Select
Trang 11End Sub
Private Sub Form_Activate()If tn = 1 Then
frmchinh.ShowUnload MeEnd If
ten = InputBox("Nhap ten cua ban :", "THONG BAO ")End Sub
Private Sub Form_Load()Dim cdr As Integer
socau = 15tn = 0dem = 0
If Dir(App.Path & "\csdl\toan.txt") = "" Thentn = 1
Exit SubEnd If
Open App.Path & "\csdl\toan.txt" For Input As 1cdr = 0
Do Until EOF(1)cdr = cdr + 1
If cdr > socau ThenExit Do
End If
For i = 1 To 6Line Input #1, scau(cdr, i) = s
Trang 12Next iLoopClose #1Randomizei = 1
Do While i <= 5cauhoi(i) = 0
cc = Int(Rnd * socau) + 1nd = 0
For j = 1 To i - 1If cauhoi(j) = cc Thennd = 1
End IfNext j
If nd <> 1 Thencauhoi(i) = ccketqua(i) = ""i = i + 1End IfLoopdiem = 0lt = 1
Lbl2(0).Caption = "C©u " & CStr(lt) & ":"Lbl2(1).Caption = cau(cauhoi(lt), 1)
Lbl2(2).Caption = cau(cauhoi(lt), 2)Lbl2(3).Caption = cau(cauhoi(lt), 3)Lbl2(4).Caption = cau(cauhoi(lt), 4)Lbl2(5).Caption = cau(cauhoi(lt), 5)Select Case ketqua(lt)
Trang 13Case "A": optchon(0).Value = TrueCase "B": optchon(1).Value = TrueCase "C": optchon(2).Value = TrueCase "D": optchon(3).Value = TrueCase Else
optchon(0).Value = Falseoptchon(1).Value = Falseoptchon(2).Value = Falseoptchon(3).Value = FalseEnd Select
End Sub
Private Sub Timer1_Timer()dem = dem + 1
If dem >= 2 ThenCall cmdkq_ClickEnd If
End Sub
Private Sub Timer2_Timer()
Trang 14Dim x As StringDim y As String
x = Left(Label1.Caption, 1)
y = Right(Label1.Caption, Len(Label1.Caption) - 1)Label1.Caption = y + x
End Sub
Màn hình Form FrmVậtlý
Code Form FrmVậtlý
Trang 15Option ExplicitOption Base 1
Dim cau(15, 6) As StringDim cauhoi(5) As Byte
Dim ketqua(10) As String * 1Dim tn, nd
Dim s As String
Dim i, j, dem As Integer
Dim lt, cc, diem, socau As IntegerDim ten
Private Sub cmdkq_Click()For i = 1 To 5
If ketqua(i) = UCase(cau(cauhoi(i), 6)) Thendiem = diem + 2
End IfNext i
Open App.Path & "\ket qua\ketqua" & CStr(Hour(Time)) & CStr(Minute(Time)) & ".txt" For Output As 2
Print #2, ten
Print #2, "So diem cua ban la: " & CStr(diem)
Print #2, CStr(Hour(Time)) & ":" & CStr(Minute(Time)) & ":" & CStr(Second(Time))
Print #2, CStr(Date)Close #2
MsgBox "So diem cua ban la:" & CStr(diem) & Chr(13) & Chr(10) & "Nhan OK de ket thuc."
frmchinh.Show
Trang 16Unload MeEnd Sub
Private Sub cmdtiep_Click()If optchon(0).Value Thenketqua(lt) = "A"
End If
If optchon(1).Value Thenketqua(lt) = "B"
End If
If optchon(2).Value Thenketqua(lt) = "C"
End If
If optchon(3).Value Thenketqua(lt) = "D"
MsgBox ("Day la cau cuoi cung.") Beep
End If
Lbl2(0).Caption = "C©u " & CStr(lt) & ":"Lbl2(1).Caption = cau(cauhoi(lt), 1)
Trang 17Lbl2(2).Caption = cau(cauhoi(lt), 2)Lbl2(3).Caption = cau(cauhoi(lt), 3)Lbl2(4).Caption = cau(cauhoi(lt), 4)Lbl2(5).Caption = cau(cauhoi(lt), 5)Select Case ketqua(lt)
Case "A": optchon(0).Value = TrueCase "B": optchon(1).Value = TrueCase "C": optchon(2).Value = TrueCase "D": optchon(3).Value = TrueCase Else:
optchon(0).Value = Falseoptchon(1).Value = Falseoptchon(2).Value = Falseoptchon(3).Value = FalseEnd Select
End Sub
Private Sub cmdlai_Click()If optchon(0).Value Thenketqua(lt) = "A"
End If
If optchon(1).Value Thenketqua(lt) = "B"
End If
If optchon(2).Value Thenketqua(lt) = "C"
End If
If optchon(3).Value Thenketqua(lt) = "D"
Trang 18End If
If lt > 1 Thenlt = lt - 1Else
MsgBox ("Day la cau dau tien.") Beep
End If
Lbl2(0).Caption = "C©u " & CStr(lt) & ":"Lbl2(1).Caption = cau(cauhoi(lt), 1)
Lbl2(2).Caption = cau(cauhoi(lt), 2)Lbl2(3).Caption = cau(cauhoi(lt), 3)Lbl2(4).Caption = cau(cauhoi(lt), 4)Lbl2(5).Caption = cau(cauhoi(lt), 5)Select Case ketqua(lt)
Case "A": optchon(0).Value = TrueCase "B": optchon(1).Value = TrueCase "C": optchon(2).Value = TrueCase "D": optchon(3).Value = TrueCase Else:
optchon(0).Value = Falseoptchon(1).Value = Falseoptchon(2).Value = Falseoptchon(3).Value = FalseEnd Select
End Sub
Private Sub Form_Activate()If tn = 1 Then
frmchinh.Show
Trang 19Unload MeEnd If
ten = InputBox("Nhap ten cua ban :", "THONG BAO ")End Sub
Private Sub Form_Load()Dim cdr As Integer
socau = 15tn = 0dem = 0
If Dir(App.Path & "\csdl\vatly.txt") = "" Thentn = 1
Exit SubEnd If
Open App.Path & "\csdl\vatly.txt" For Input As 1cdr = 0
Do Until EOF(1)cdr = cdr + 1
If cdr > socau ThenExit Do
End If
For i = 1 To 6Line Input #1, scau(cdr, i) = sNext i
LoopClose #1Randomizei = 1
Trang 20Do While i <= 5cauhoi(i) = 0
cc = Int(Rnd * socau) + 1nd = 0
For j = 1 To i - 1If cauhoi(j) = cc Thennd = 1
End IfNext j
If nd <> 1 Thencauhoi(i) = ccketqua(i) = ""i = i + 1End IfLoopdiem = 0lt = 1
Lbl2(0).Caption = "C©u " & CStr(lt) & ":"Lbl2(1).Caption = cau(cauhoi(lt), 1)
Lbl2(2).Caption = cau(cauhoi(lt), 2)Lbl2(3).Caption = cau(cauhoi(lt), 3)Lbl2(4).Caption = cau(cauhoi(lt), 4)Lbl2(5).Caption = cau(cauhoi(lt), 5)Select Case ketqua(lt)
Case "A": optchon(0).Value = TrueCase "B": optchon(1).Value = TrueCase "C": optchon(2).Value = TrueCase "D": optchon(3).Value = TrueCase Else
Trang 21optchon(0).Value = Falseoptchon(1).Value = Falseoptchon(2).Value = Falseoptchon(3).Value = FalseEnd Select
End Sub
Private Sub Timer1_Timer()dem = dem + 1
If dem >= 2 ThenCall cmdkq_ClickEnd If
Trang 22Label1.Caption = y + xEnd Sub
Màn hình Form FrmVănhọc
Code Form FrmVănhọc
Option ExplicitOption Base 1
Dim cau(15, 6) As StringDim cauhoi(5) As Byte
Dim ketqua(10) As String * 1
Trang 23Dim tn, ndDim s As String
Dim i, j, dem As Integer
Dim lt, cc, diem, socau As IntegerDim ten
Private Sub cmdkq_Click()For i = 1 To 5
If ketqua(i) = UCase(cau(cauhoi(i), 6)) Thendiem = diem + 2
End IfNext i
Open App.Path & "\ket qua\ketqua" & CStr(Hour(Time)) & CStr(Minute(Time)) & ".txt" For Output As 2
Print #2, ten
Print #2, "So diem cua ban la: " & CStr(diem)
Print #2, CStr(Hour(Time)) & ":" & CStr(Minute(Time)) & ":" & CStr(Second(Time))
Print #2, CStr(Date)Close #2
MsgBox "So diem cua ban la:" & CStr(diem) & Chr(13) & Chr(10) & "Nhan OK de ket thuc."
frmchinh.ShowUnload MeEnd Sub
Private Sub cmdtiep_Click()If optchon(0).Value Then
Trang 24ketqua(lt) = "A"End If
If optchon(1).Value Thenketqua(lt) = "B"
End If
If optchon(2).Value Thenketqua(lt) = "C"
End If
If optchon(3).Value Thenketqua(lt) = "D"
MsgBox ("Day la cau cuoi cung.") Beep
End If
Lbl2(0).Caption = "C©u " & CStr(lt) & ":"Lbl2(1).Caption = cau(cauhoi(lt), 1)
Lbl2(2).Caption = cau(cauhoi(lt), 2)Lbl2(3).Caption = cau(cauhoi(lt), 3)Lbl2(4).Caption = cau(cauhoi(lt), 4)Lbl2(5).Caption = cau(cauhoi(lt), 5)Select Case ketqua(lt)
Trang 25Case "A": optchon(0).Value = TrueCase "B": optchon(1).Value = TrueCase "C": optchon(2).Value = TrueCase "D": optchon(3).Value = TrueCase Else:
optchon(0).Value = Falseoptchon(1).Value = Falseoptchon(2).Value = Falseoptchon(3).Value = FalseEnd Select
End Sub
Private Sub cmdlai_Click()If optchon(0).Value Thenketqua(lt) = "A"
End If
If optchon(1).Value Thenketqua(lt) = "B"
End If
If optchon(2).Value Thenketqua(lt) = "C"
End If
If optchon(3).Value Thenketqua(lt) = "D"
End If
If lt > 1 Thenlt = lt - 1Else
MsgBox ("Day la cau dau tien.")
Trang 26BeepEnd If
Lbl2(0).Caption = "C©u " & CStr(lt) & ":"Lbl2(1).Caption = cau(cauhoi(lt), 1)
Lbl2(2).Caption = cau(cauhoi(lt), 2)Lbl2(3).Caption = cau(cauhoi(lt), 3)Lbl2(4).Caption = cau(cauhoi(lt), 4)Lbl2(5).Caption = cau(cauhoi(lt), 5)Select Case ketqua(lt)
Case "A": optchon(0).Value = TrueCase "B": optchon(1).Value = TrueCase "C": optchon(2).Value = TrueCase "D": optchon(3).Value = TrueCase Else:
optchon(0).Value = Falseoptchon(1).Value = Falseoptchon(2).Value = Falseoptchon(3).Value = FalseEnd Select
End Sub
Private Sub Form_Activate()If tn = 1 Then
frmchinh.ShowUnload MeEnd If
ten = InputBox("Nhap ten cua ban :", "THONG BAO ")End Sub
Trang 27Private Sub Form_Load()Dim cdr As Integer
socau = 15tn = 0dem = 0
If Dir(App.Path & "\csdl\vanhoc.txt") = "" Thentn = 1
Exit SubEnd If
Open App.Path & "\csdl\vanhoc.txt" For Input As 1cdr = 0
Do Until EOF(1)cdr = cdr + 1
If cdr > socau ThenExit Do
End If
For i = 1 To 6Line Input #1, scau(cdr, i) = sNext i
LoopClose #1Randomizei = 1
Do While i <= 5cauhoi(i) = 0
cc = Int(Rnd * socau) + 1nd = 0
For j = 1 To i - 1
Trang 28If cauhoi(j) = cc Thennd = 1
End IfNext j
If nd <> 1 Thencauhoi(i) = ccketqua(i) = ""i = i + 1End IfLoopdiem = 0lt = 1
Lbl2(0).Caption = "C©u " & CStr(lt) & ":"Lbl2(1).Caption = cau(cauhoi(lt), 1)
Lbl2(2).Caption = cau(cauhoi(lt), 2)Lbl2(3).Caption = cau(cauhoi(lt), 3)Lbl2(4).Caption = cau(cauhoi(lt), 4)Lbl2(5).Caption = cau(cauhoi(lt), 5)Select Case ketqua(lt)
Case "A": optchon(0).Value = TrueCase "B": optchon(1).Value = TrueCase "C": optchon(2).Value = TrueCase "D": optchon(3).Value = TrueCase Else
optchon(0).Value = Falseoptchon(1).Value = Falseoptchon(2).Value = Falseoptchon(3).Value = FalseEnd Select
Trang 29End Sub
Private Sub Timer1_Timer()dem = dem + 1
If dem >= 2 ThenCall cmdkq_ClickEnd If
End Sub
Màn hình Form Frmlịchsử
Trang 30Code From Frmlịchsử
Option ExplicitOption Base 1
Dim cau(15, 6) As StringDim cauhoi(5) As Byte
Dim ketqua(10) As String * 1Dim tn, nd
Dim s As String
Dim i, j, dem As Integer
Dim lt, cc, diem, socau As IntegerDim ten
Trang 31Private Sub cmdkq_Click()For i = 1 To 5
If ketqua(i) = UCase(cau(cauhoi(i), 6)) Thendiem = diem + 2
End IfNext i
Open App.Path & "\ket qua\ketqua" & CStr(Hour(Time)) & CStr(Minute(Time)) & ".txt" For Output As 2
Print #2, ten
Print #2, "So diem cua ban la: " & CStr(diem)
Print #2, CStr(Hour(Time)) & ":" & CStr(Minute(Time)) & ":" & CStr(Second(Time))
Print #2, CStr(Date)Close #2
MsgBox "So diem cua ban la:" & CStr(diem) & Chr(13) & Chr(10) & "Nhan OK de ket thuc."
frmchinh.ShowUnload MeEnd Sub
Private Sub cmdtiep_Click()If optchon(0).Value Thenketqua(lt) = "A"
End If
If optchon(1).Value Thenketqua(lt) = "B"
End If