TRƯỜNG ĐẠI HỌC FPT
CAO ĐẲNG FPT POLY TECHNIC
FPT POLYTECHNIC - THANH HOÁ
BÁO CÁO
THỰC HIỆN ASSINGMEN _SOF01
LẬP TRÌNH CƠ BẢN
***
_assigment sof 01
TP.Thanh Hoá-Thanh Hoá, Thứ 2 Ngày 21 Tháng 10 Năm 2013
Phụ lục I:
CAO ĐẲNG FPT POLY TECHNIC
FPT POLYTECHNIC - THANH HOÁ
BÁO CÁO
THỰC HIỆN ASSINGMEN _SOF01
Đề tài : Ứng dụng CNTT trong Giáo Dục_phần mền trắc nghiệm
I: Thông tin sinh viên thực hiện:
Cơ Sở: FPT PoLyTechnic Thanh Hoá
Khoá :9.1
Lớp :PT0901
Chuyên nghành học : Ứng Dựng Phần Mềm
Họ tên sinh viên: Nguyễn Ngọc Trinh
Mã số sinh viên :PA00034
Mail:
Bộ môn: Lập Trình Cơ Bản
Giáo Viên Phụ Trách: Lê Thanh Hải
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 2
_assigment sof 01
II: LỜI NÓI ĐẦU
Hiện nay công nghệ thông tin là một lĩnh vực đã và đang được áp dụng
và đưa vào ngày càng nhiều trong cuộc sống . Đặc biêt ngày càng được đưa
vào nhiều hơn trong các trường học .
*
Với sự đầu tư cơ sở hạ tầng , vật chất đặc biệt là chính sách “ Đưa công
nghệ thông tin vào trong giáo dục- đổi mới phương pháp giảng dạy, học tập”
của bộ GD & ĐT .Cùng với sự giúp đỡ của các nhà cung cấp mạng, viễn thông
như VNPT, Viettell, FPT…., khá nhiều các cấp học, cơ sở giáo dục đã có được
cơ sở hạ tầng , trang thiết bi về công nghệ thông tin khá hiện đại.
*
Nhưng hiện nay việc sử dụng hệ thống trang thiết bị đó làm sao cho hiệu
quả.Cũng như có các ứng dụng để sử dụng hiệu quả hệ thống trang thiết bị máy
tính đó lại là vấn đề được nói đến không ít.
Trong trường học của nước ta hiện nay, các em sinh đa số được học rất nhiều lí
thuyết (trừ một số các trường chuyên, trường quốc tế) sau đó thực hành 1 đến 2
buổi, và quay lại kiểm tra trên giấy.
Với phương pháp giảng dạy như vậy ta có thể khẳng định các em nắm khá tốt lí
thuyết , nhưng về kĩ năng thì gần như là rất ít.
*
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 3
_assigment sof 01
Với sản phẩm _ứng dụng thi trắc nghiệm (*)
Đây là một ứng dụng nền tảng cơ bản, chạy được trên nhiều loại trình
duyệt khác nhau, dễ sử dụng với cả những người chưa biết , và có thể sẽ là một
điều thú vị để các bạn,thầy cô biết một chút về CNTT mở rộng thêm các tính
năng sản phẩm.
Được viết ra với mục đích chính như một bài kiểm tra ngắn,trên hình thức trắc
nghiệm,nhằm kiểm tra kiến thức chung của học sinh, nhưng cũng có thể thêm
các nội dung câu hỏi cũng như các đề mục liên quan để hình thành các bài kiểm
trang mang tính chất quan trọng như kiểm tra cuối kì,kết thúc môn. Một cách
nhanh chóng, chính xác hiệu quả nhất với giáo viên,học sinh, cũng như tiết
kiệm thời gian.
*
Do đây là kì đầu tiên được học môn lập trình . Kiến thức về lập trình còn chưa
chuyên sâu, sản phẩm còn nhiều thiếu sót cũng như các điểm chưa được như ý
muốn, mong các thầy cô cũng như bạn đọc góp ý thêm để có thể hoàn thiên sản
phẩm.
***
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 4
_assigment sof 01
III: CÁC BƯỚC XÂY DỰNG, YÊU CẦU CỦA ỨNG DỤNG
• Tìm ý tưởng ,xây dựng ứng dụng cơ bản của hệ thống
• Phác thảo sơ đồ,vẽ mô phỏng
• Lựa chọn ngôn ngữ phù hợp với nội dung và yêu cầu của ứng dụng
• Xây dựng from và tìm hiểu cấu trúc hoạt động của các from
• Viết và hoàn thiện code của ứng dụng
• Hoàn chỉnh ứng dụng và chạy thử nghiêm
IV: TÌM HIỂU VÀ LỰA TRỌN Ý TƯỞNG
Lâu nay, thụ động trong giảng dạy và học tập đã trở thành một thói
quen. Nhưng khi cả thế giới thay đổi bởi sức mạnh của CNTT, giáo dục cũng
không thể giậm chân tại chỗ. Ứng dụng CNTT được kỳ vọng là lựa chọn khả
thi giúp “năng động hoá” cả ngành giáo dục VN!
Tại Việt Nam, cách đây khoảng vài năm, những hoạt động ứng dụng
CNTT trong dạy và học đã bắt đầu xuất hiệ. Thế nhưng việc triển khai một
cách nhỏ lẻ, đôi khi là tự phát, lại không giao tận tay công cụ cho giáo viên, học
sinh, đã khiến ho nhiều người nghi ngờ hiệu quả của việc ứng dụng CNTT vào
dạy và học.
Vậy thực trạng của việc ứng dụng Công nghệ thông tin trong dạy và học
hiện nay như thế nào? Đặc biệt trong kiểm tra đánh giá. Khái niệm về kiểm tra
đánh giá ? Phương pháp trắc nghiệm và phương pháp trắc nghiệm khách quan
Vì vậy chúng ta cần có một cái gì đó thực tế hơn so với những ứng dụng
đang được áp dụng. Với ngành giáo dục hiện tại là nơi tạo ra những tài năng,
rất nhiều người trưởng thành từ đâym nhưng với tốc dộ phát triển hiện tại của
CNTT trên thế giới thì có lẽ những điều sinh viên này chưa hợp lí với sựu phát
triển của học sinh, sinh viên.
Một ví dụ đơn giản trong một kì thi nếu ta thực hiên việc thi trên giấy thì
phải qua rất nhiều công đoạn: giáo viên tìm hiểu đề - đưa ra tổ bộ môn xem xét
câu hỏi, đề - viết lại đề sau khi sửa – in ra mỗi học sinh, sinh viên 1 bản – học
sinh làm bài – chấm bài – gọi điểm ghi sổ con, sổ lớn. Với các công đoạn như
vậy ta đã có đk 1 con điểm 15 phút của 1 học sinh cấp 3. Vậy vấn đề ở đây là j.
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 5
_assigment sof 01
Có quá nhiều công đoạn cũng như các vấn đề nảy sinh trong việc quản lý
cũng như làm bài kiểm tra như vậy, vậy phương án giải quyết ở đây là j, tình
huống đặt ra, các sự cố có thể xảy ra
Thứ nhất vấn đề có quá nhiều công đoạn được thực hiện để có thể đưa ra
đk 1 con điểm, hơn nữa sai sót lớn cũng như tính công bằng không cao với các
bài viết tay thì khó lòng đánh giá đk hết kiến thức của học sinh
Thứ hai, các thông tin quá nhiều nếu số lượng học sinh quá lớn thì khó
kiểm soát được hết các vấn đề nảy sinh.
Thứ ba, không tận dụng triệt để được nguồn cơ sở dữ liệu, thông tin, cơ
sở hạ tầng của các trường học đã được ưu tiên xây dựng và bố trí.
Vì vậy ta cần một hệ thống cơ sở dữ liệu , cũng như ứng dụng được xây dựng
phù hợp với học sinh, sinh viên cũng như các thầy cô trong giảng dậy và học
tập.
Do kiến thức có hạn nên ở đây em chỉ dám đề cập đến 1 ứng dụng trong việc hỗ
trợ giản dậy và học tập:
Đề tài được lựa chọn : Ứng Dụng Trắc Nghiệm Trong Giáo Dục
***
V: PHÁC THẢO Ý TƯỞNG, MÔ PHỎNG SƠ ĐỒ
Để xây dựng được một ứng dụng ta cần xác định ý tưởng cũng như mục tiêu thực
hiện.
1 ý tưởng: Xây dưng Ứng Dụng Trắc Nghiệm Trong Giáo Dục
2 mục tiêu: xây dựng được một ứng dụng trắc nghiệm, dễ hiểu với học sinh,
sinh viên, có thể thực hiện được các bài trắc nghiệm ngắn mang tính chất tb của 1 bài
kiểm tra 15p đến bài kiểm tra 1 tiết. có thể biết kết quả nhanh sau khi làm bài, thông
báo trực tiếp đến sinh viên.
Các form sẽ thực hiện trong bài
1: form đăng nhập
2: quản lí
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 6
_assigment sof 01
3: thêm quiz
4: xem quiz
5: làm quiz
6 : hiển thị kết quả
2: sơ đồ di chuyển của các form:
Sơ đồ di chuyển của các From trong ứng dụng
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 7
From thêm
quiz
Form
xem quiz
Form đăng
nhập
Admin
Xem kết quả
Form quản lí
Form Làm quiz Làm bài Hiển thị kiết quả
_assigment sof 01
***
VI:Lựa chọn ngôn ngữ lập trỉnh.
Với phần mền Microsoft Visual Studio của vb.net thì có khá nhiều nhiều
ngôn ngữ lập trình được tính hợp, nhưng với học sinh cấp 3 hiện nay ngôn ngữ
được học là tubo passcan, nhưng trong lichj sử phát triển của các ngôn ngữ lập
trình, tính đến hiện tại thì Passcan đã trở nên khó hiểu , lỗi thời với nên CNTT
hiện tại, nhưng chúng ta ko thể nói thay thế sách vở, cải cách chương trình giáo
dục làm làm được ngay, vì vậy cần có 1 ngôn ngữ ở mức trung gian, gần nhất
với học sinh, sinh viên đam mê CNTT, cũng như việc quản lí của thầy cô.
Lí do chon vissuabasic làm ngôn ngữ lập trình:
Visual Basic, con đường nhanh nhất và đơn giản nhất để tạo những ứng
dụng cho Microsoft Windows. Bất kể bạn là một nhà chuyên nghiệp hay là một
người mới lập trình Windows, Visual Basic cung cấp cho bạn một tập hợp các
công cụ hoàn chỉnh để nhanh chóng phát triển các ứng dụng.
Vậy Visual Basic là gì ? Thành phần “Visual” nói đến các phương thức dùng để
tạo giao diện đồ họa người sử dụng (GUI). Thay vì viết những dòng mã để mô
tả sự xuất hiện và vị trí của những thành phần giao diện, ta chỉ cần thêm vào
những đối tượng đã được định nghĩa trước ở vị trí nào đó trên màn hình.
Thành phần “Basic” nói đến ngôn ngữ “BASIC” (Beginners All-Purpose
Symbolic Instruction Code) một ngôn ngữ được dùng bởi nhiều nhà lập trình
hơn bất cứ một ngôn ngữ nào khác trong lịch sử máy tính. Visual Basic được
phát triển dần dần dựa trên ngôn ngữ BASIC, và bây giờ chứa đựng hàng trăm
điều lệnh, hàm, và từ khóa… có quan hệ trực tiếp với giao diện đồ họa của
Windows.
Ngôn ngữ lập trình Visual Basic không chỉ là Visual Basic. Hệ thống lập
trình Visual Basic, những ứng dụng bao gồm Microsoft Excel, Microsoft
Access, và nhiều ứng dụng Windows khác đều dùng cùng một ngôn ngữ.
Mặc dù mục đích của chúng ta là tạo ra những ứng dụng nhỏ cho bản thân hay
một nhóm, một hệ thống các công ty lớn, hoặc thậm chí phân phối những ứng
dụng ra toàn cầu qua Internet. Visual Basic là cung cụ mà bạn cần.
Những chức năng truy xuất dữ liệu cho phép ta tạo ra những cơ sở dữ liệu,
những ứng dụng front-end, và những thành phần phạm vi server-side cho hầu
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 8
_assigment sof 01
hết các dạng thức cơ sở dữ liệu phổ biến, bao gồm Microsoft SQL Server và
những cơ sở dữ liệu mức enterprise khác.
Những kỹ thuật ActiveX cho phép ta dùng những chức năng được cung cấp từ
những ứng dụng khác, như là chương trình xử lý văn bản Microsoft Word, bảng
tính Microsoft Excel và những ứng dụng Windows khác.
Khả năng Internet làm cho nó dễ dàng cung cấp cho việc thêm vào những tài
liệu và ứng dụng qua Internet hoặc intranet từ bên trong ứng dụng của bạn,
hoặc tạo những ứng dụng Internet server.
Ưng dụng của bạn kết thúc là một file .exe thật sự. Nó dùng một máy ảo Visual
Basic để bạn tự do phân phối ứng dụng.
Vậy chúng ta có thể làm được những gì với VB:
Chúng ta có thể làm gì với Visual Basic
Tạo giao diện người sử dụng
Giao diện người sử dụng có lẽ là thành phần quan trọng nhất của một ứng dụng. Đối
với người sử dụng, giao diện chính là ứng dụng ; họ không cần chú ý đến thành phần
mã thực thi bên dưới. Ứng dụng của chúng ta có thể phổ biến được hay không phụ
thuộc vào giao diện.
Sử dụng những điều khiển chuẩn của Visual Basic
Ta dùng những điều khiển để lấy thông tin mà người sử dụng nhập vào, và để hiển thị
kết xuất. Những điều khiển mà ta có thể dùng trong ứng dụng bao gồm hộp văn bản,
nút lệnh, và hộp danh sách,…. Những điều khiển khác cho ta truy xuất những ứng
dụng khác, xử lý dữ liệu của nó như là một thành phần mã trong ứng dụng của bạn.
Lập trình với những đối tượng.
Những đối tượng là thành phần chủ yếu để lập tình Visual Basic. Những đối tượng có
thể là form, những điều khiển hay cơ sở dữ liệu.
Lập trình với phần hợp thành
Chúng ta đôi khi cần sử dụng khả năng tính toán của Microsoft Excel trong ứng dụng
Visual Basic, hay định dạng một tài liệu sử dụng thanh công cụ định dạng của
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 9
_assigment sof 01
Microsoft Word, hoặc lưu trữ và xử lý dữ liệu dùng Microsoft Jet… Tất cả những
điều này có thể thực hiện được bằng cách xây dựng những ứng dụng của chúng ta sử
dụng những thành phần ActiveX. Thêm vào đó, Visual Basic có thể giúp chúng ta tạo
ra những điều khiển ActiveX riêng.
Đáp ứng những sự kiện chuột và bàn phím
Những ứng dụng Visual Basic có thể đáp ứng một lượng lớn sự kiện chuột và bàn
phím. Ví dụ form, hộp ảnh, và những điều khiển ảnh có thể phát hiện vị trí con trỏ
chuột, có thể quyết định phím trái hay phím phải được nhấn, và có thể đáp ứng những
tổ hợp của phím chuột với phím Shift, Ctrl, hay Alt. Sử dụng những điều khiển phím,
ta có thể lập trình những điều khiển và form để đáp ứng các hành động phím hoặc
phiên dịch và xử lý mã Ascii của ký tự.
Thêm vào đó, những ứng dụng Visual Basic có thể hỗ trợ sự kiện rê và thả cũng như
tính năng rê và thả OLE.
Làm việc với văn bản và đồ họa.
Visual Basic cung cấp khả năng đồ họa và văn bản phức tạp trong ứng dụng. Những
thuộc tính văn bản có thể giúp ta nhấn mạnh các khái niệm quan trọng và các chi tiết
cần quan tâm. Thêm vào đó, Visual Basic cung cấp khả năng đồ họa cho phép ta linh
động trong thiết kế, bao hàm các hình ảnh động bằng cách hiển thị một loạt các hình
ảnh liên tiếp nhau.
Gỡ rối mã và quản lý lỗi
Đôi khi có những lỗi xảy ra bên trong mã của ứng dụng. Những lỗi nghiêm trọng có
thể là nguyên nhân một ứng dụng không đáp ứng lệnh, thông thường yêu cầu người
sử dụng khởi động lại ứng dụng, và không lưu lại những gì ta đã làm. Quá trình tìm ra
và sửa lỗi gọi là gỡ rối. Visual Basic cung cấp nhiều công cụ giúp chúng ta phân tích
ứng dụng làm việc như thế nào. Những công cụ gỡ rối đặt biệt hữu ích trong việc tìm
ra nguồn gốc lỗi, nhưng chúng ta cũng có thể dùng những công cụ này để kiểm tra
chương trình hoặc tìm hiểu những ứng dụng khác nhau làm việc như thế nào.
Xử lý ổ đĩa, thư mục và file
Khi lập trình trong Windows, nó rất quan trọng để có khả năng thêm, di chuyển, tạo
mới hoặc xóa những thư mục và file, lấy thông tin về và xử lý ổ đĩa. Visual Basic cho
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 10
_assigment sof 01
phép chúng ta xử lý ổ đĩa, thư mục và file bằng hai phương pháp : qua những phương
htức cũ như là điều lệnh Open, Write#, và qua một tập hợp các công cụ mới như FSO
(File System Object)
Thiết kế cho việc thi hành và tính tương thích
Visual Basic chia xẻ hầu hết những tính năng ngôn ngữ trong Visual Basic cho những
ứng dụng, bao gồm trong Microsoft Office và nhiều ứng dụng khác. Visual Basic,
VBScript, một ngôn ngữ script Internet, đều là tập hợp con của ngôn ngữ Visual
Basic.
Phân phối những ứng dụng
Sau khi tạo một ứng dụng Visual Basic, ta có thể tự do phân phối bất kỳ ứng dụng nào
đã tạo bằng Visual Basic đến bất cứ ai dùng Microsoft Windows. Ta có thể phân phối
ứng dụng trên đĩa, trên CD, qua mạng, trên intranet hoặc Internet.
Kết Luận
Tuy không phải là ngôn ngữ lập trình được sử dụng phổ biến nhất hiện nay nhưng vb
đảm bảo các yêu cầu cơ bản với những người mới học về lập trình có thể biết và sử
dụng để đảm bảo việc vận hành sản phẩm trong khi sử dụng với những người quản trị
là thầy cô trong các cơ sở giáo duc, với kiến thức về lập trình ko chuyên sâu nhưng
vẫn có thể vận hành được hệ thống.
***
VII: CHI TIẾT CÁC FORM CŨNG NHƯ SƠ ĐỒ LUỒNG THÔNG TIN TRONG
FORM
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 11
_assigment sof 01
1: Form Đăng Nhập
Sơ đồ cấu trúc form đăng nhập
Cấu trúc , thông tin , cách thức hoạt động của form
Trong form đăng ngập , người dùng sẽ được cấp trước 1 tài khoản
Khi nhập thông tin vào tài khoản , password , hệ thống sẽ kiểm tra thông tin
Nếu đúng sẽ chuyển sang from quản lí
Nếu sai, hiển thị thông báo, “ tên đăng nhập hoặc mật khẩu không đúng”
Nếu thiếu thông tin 1 trong 2 ô tài khoản hoặc mật khẩu thì hiển thị thông báo
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 12
Nhập passwordNhập thông tin tài
khoản
Đăng nhập thành
công
Xét thông tin đăng
nhập
Chưa nhập thông tin
TK, password
Form quản lí
_assigment sof 01
“bạn phải nhập đủ thông tin”
Các câu lệnh sử dụng trong form đăng nhập
Public Class dangnhap
Private Sub btnLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles btnLogin.Click
If txtPassWord.Text = "admin" And txtUserName.Text = "admin" Then
quanly.Show()
quanly.LàmQuizToolStripMenuItem.Enabled = True
quanly.QuanToolStripMenuItem.Enabled = True
ElseIf txtUserName.Text = "admin" And txtPassWord.Text = "admin" Then
quanly.Show()
quanly.QuanToolStripMenuItem.Enabled = False
quanly.LàmQuizToolStripMenuItem.Enabled = False
ElseIf txtUserName.Text = "" And txtPassWord.Text = "" Then
MessageBox.Show("Bạn phải nhập đủ thông tin", "Thông báo", MessageBoxButtons.OK,
MessageBoxIcon.Error)
Else
MessageBox.Show("tên đăng nhâp hoặc mật khẩu không đúng")
End If
Me.Hide()
If txtUserName.Text = "admin" And txtPassWord.Text = "admin" Then
Me.Hide()
quanly.Show()
ElseIf txtUserName.Text = "sinhvien" And txtPassWord.Text = "sinhvien" Then
Me.Hide()
lambai.Show()
End If
End Sub
Các câu lệnh sử dụng trong form đăng nhập
***
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 13
_assigment sof 01
2:Form Quản lí
Sơ đồ cấu trúc form quản lí
Cấu trúc , thông tin , cách thức hoạt động của form quản lí
Từ menu của form quản lí , có nhiều lựa trọn cho người quản lí đến các from
Từ form quản lí, có thể chuyển trực tiếp đến from làm quiz
Từ form quản lí, có thể chuyển trực tiếp đến from hiển thị kết quả
Từ form quản lí, có thể chuyển trực tiếp đến from quản lí quiz
Sau đó ta có các lựa chọn đến các form khác như xem quiz , form thêm quiz
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 14
Form quản lý
Lựa chọn
Quản lí quiz
Hiển thị kết quả
Lựa chọn
Lựa chọn
Form làm quiz
Thêm quizXem quiz
_assigment sof 01
3: Form xem thêm quiz
Sơ đồ cấu trúc form thêm quiz
Cấu trúc , thông tin , cách thức hoạt động của form thêm quiz
Nhập thông thông tin từ các textbox câu hỏi, textbox dap án 1, textbox dáp án
2, textbox dáp án 3, textbox dáp án 4.lựa trọn đáp án.
Nếu chưa nhập đáp án thì hiển thị thông báo
Thông tin đươc ghi vào file text thông quan btn luu, giá trị luu được thiết lập ở
file text.
Các câu lệnh sử dụng trong form thêm quiz
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 15
Đáp Án 2Đáp án 1 Dáp Án 3Câu hỏi
Lựa chọn đáp
án đúng
Đáp Án 4
Nhập dữ liệu
Ghi thông tin
vào file text
_assigment sof 01
Imports System.IO
Public Class themquiz
Function checkrong() As Boolean
If txtCauHoi.Text.Trim() = "" Then
MessageBox.Show("Bạn chưa nhập câu hỏi")
txtCauHoi.Focus()
Return False
End If
If txtDaA.Text.Trim() = "" Then
MessageBox.Show("Bạn chưa nhập đáp án A")
txtDaA.Focus()
Return False
End If
If txtDaB.Text.Trim() = "" Then
MessageBox.Show("Bạn chưa nhập đáp án B")
txtDaB.Focus()
Return False
End If
If txtDaC.Text.Trim() = "" Then
MessageBox.Show("Bạn chưa nhập đáp án C")
txtDaC.Focus()
Return False
End If
If txtDaD.Text.Trim() = "" Then
MessageBox.Show("Bạn chưa nhập đáp án D")
txtDaD.Focus()
Return False
End If
If cboTraLoi.Text.Trim() = "" Then
MessageBox.Show("Bạn chưa nhập đáp án A")
cboTraLoi.Focus()
Return False
End If
Return True
End Function
Private Sub btnThem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles btnThem.Click
If checkrong() = False Then
Return
End If
Dim ghifile As StreamWriter = New StreamWriter(Application.StartupPath &
"\cauhoi.txt", True)
ghifile.WriteLine(txtCauHoi.Text & ControlChars.Tab & _
txtDaA.Text & ControlChars.Tab & _
txtDaB.Text & ControlChars.Tab & _
txtDaC.Text & ControlChars.Tab & _
txtDaD.Text & ControlChars.Tab & _
cboTraLoi.Text)
ghifile.Close()
txtCauHoi.Clear()
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 16
_assigment sof 01
txtDaA.Clear()
txtDaB.Clear()
txtDaC.Clear()
txtDaD.Clear()
End Sub
Các câu lệnh sử dụng trong form thêm quiz
***
4:Form xem quiz
Sơ đồ luồng dữ liệu trong form xem quiz
Cấu trúc , thông tin , cách thức hoạt động của form quản lí
trong form ta dùng lệnh đọc thông tin từng file từ đầu file đến cuối file text đã
ghi trong form đọc .
thông tin được chạy từ đầu đến cuối file,chay thông tin theo từng dòng, tới khi
hết mảng thông tin trong file thì dừng lại
Các câu lệnh sử dụng trong
Imports System.IO
Public Class xemquiz
Private Sub dgvDSQuiz_CellContentClick(ByVal sender As System.Object, ByVal e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvDSQuiz.CellContentClick
End Sub
Private Sub xemquiz_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Load
Dim docfile As StreamReader = New StreamReader(Application.StartupPath &
"\cauhoi.txt")
Dim dong As String
Dim stt As Integer
Do Until docfile.EndOfStream ' đọc hết file
dong = docfile.ReadLine() 'đọc từng dòng
stt += 1
Dim mang As String() = dong.Split(ControlChars.Tab)
dgvDSQuiz.Rows.Add(stt, mang(0), mang(1), mang(2), mang(3), mang(4), mang(5))
Loop
End Sub
End Class
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 17
_assigment sof 01
5: Form làm bài:
Sơ đồ luồng dữ liệu trong form làm bài
Cấu trúc , thông tin , cách thức hoạt động của form làm bài
Thực hiện đọc thông tin của file text đã ghi trong file đã ghi ở trong phần thêm
quiz. Thực hiên click đọc thông tin, bằng btn tiếp theo để sang câu hỏi mới, thông
tin bắt đầu chạy sang câu n=n+1.
Khi thực hiện hết số câu hỏi đã gọi. chuyển sang btn kết thúc, bắt đầu thực hiện
chấm điểm - chuyển sang from hiển thị kết quả
Khi thực hiện quay lại , các câu hỏi đọc ngược trở lại , nhưng giới hạn ở số câu
hỏi bằng -=1 .
Gán các mảng để chạy thông tin, theo các mảng được gán sẵn trong đó
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 18
Click btn tiếp theo
Đọc thông tin
Dữ liệu hiển
thị trong from
làm bài
File text đã được
ghi trong from
thêm quiz
Btn quay lại . đọc thông tin đến
câu =câu hỏi-1
Click btn ket thuc
Đọc thông tin
quay lại
form làm bài
Form hiển thị kết quả
_assigment sof 01
Các câu lệnh đã sử dụng trong from làm bài
Imports System.IO
Public Class lambai
Dim dsquizhientai As List(Of quiz)
Dim cauhoihientai As Integer = 0
Dim diem As Integer = 0
Dim socauhoi As Integer
Dim ketqua As Double
Dim slcau As Integer
Function docquiztufile() As List(Of quiz)
Dim danhsachquiz As List(Of quiz) = New List(Of quiz)()
Dim docfile As StreamReader = New StreamReader(Application.StartupPath &
"\cauhoi.txt")
Do While docfile.EndOfStream = False
Dim dong As String = docfile.ReadLine()
Dim mang As String() = dong.Split(ControlChars.Tab)
Dim quiz As quiz = New quiz()
quiz.cauhoi = mang(0)
quiz.dapanA = mang(1)
quiz.dapanB = mang(2)
quiz.dapanC = mang(3)
quiz.dapanD = mang(4)
quiz.traloi = mang(5)
danhsachquiz.Add(quiz)
Loop
Return danhsachquiz
End Function
Function layquizngaynhien() As List(Of quiz)
Dim danhsachquiz As List(Of quiz) = docquiztufile()
Dim randomquizlist As List(Of quiz) = New List(Of quiz)
Dim mangdanhdau(0 To danhsachquiz.Count - 1) As Boolean
For i As Integer = 0 To socauhoi
Dim randomindex As Integer
Dim random As Random = New Random()
Do
randomindex = random.Next(danhsachquiz.Count)
Loop Until mangdanhdau(randomindex) = False
mangdanhdau(randomindex) = True
randomquizlist.Add(danhsachquiz(randomindex))
Next
Return randomquizlist
End Function
Sub hienthi(ByVal quiz As quiz)
txtCauHoi.Text = quiz.cauhoi
txtDaA.Text = quiz.dapanA
txtDaB.Text = quiz.dapanB
txtDaC.Text = quiz.dapanC
txtDaD.Text = quiz.dapanD
cboTraLoi.Text = quiz.traloi
End Sub
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 19
_assigment sof 01
Private Sub txtCauHoi_TextChanged(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles txtCauHoi.TextChanged
End Sub
Private Sub lambai_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Load
cboTraLoi.Text = " "
dsquizhientai = layquizngaynhien()
hienthi(dsquizhientai(0))
End Sub
Private Sub btnTiepTheo_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnTiepTheo.Click
If cauhoihientai < socauhoi Then
lblSTT.Text += 1
cauhoihientai += 1
hienthi(dsquizhientai(cauhoihientai))
End If
End Sub
Private Sub btnQuayLai_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles btnQuayLai.Click
If cauhoihientai > 0 Then
lblSTT.Text -= 1
cauhoihientai -= 1
hienthi(dsquizhientai(cauhoihientai))
End If
End Sub
Private Sub btnKetThuc_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles btnKetThuc.Click
For i As Integer = 0 To dsquizhientai.Count - 1
If dsquizhientai(i).traloi = dsquizhientai(i).dapan Then
diem += 1
End If
Next
ketqua = diem / socauhoi
slcau = socauhoi + 1
hienthiketqua.thietlapsocau(slcau)
hienthiketqua.thietlapdiem(diem)
hienthiketqua.Show()
If ketqua > 0.8 Then
hienthiketqua.PictureBox1.ImageLocation = "anh/iloveyou.jpg"
ElseIf ketqua >= 0.6 Then
hienthiketqua.PictureBox1.ImageLocation = "anh/cogang.jpg"
Else
hienthiketqua.PictureBox1.ImageLocation = "anh/giandoi.jpg"
End If
End Sub
Private Sub cboTraLoi_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cboTraLoi.SelectedIndexChanged
dsquizhientai(cauhoihientai).dapan = cboTraLoi.Text
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 20
_assigment sof 01
End Sub
Sub slcauhoi(ByVal cauhoi As Integer)
socauhoi = cauhoi
End Sub
End Class
6:Form hiển thị kết quả
Sơ đồ cấu trúc hoạt dộng của from hiển thị kết quả
Các câu lệnh sử dụng
Public Class hienthiketqua
Dim ketqua As Integer = 0
Dim diem1 As Integer = 0
Dim soluongcau As Integer = 0
Sub thietlapdiem(ByVal diem As Integer)
diem1 = diem
End Sub
Sub thietlapsocau(ByVal socau As Integer)
soluongcau = socau
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 21
Form làm bài
Dem so luong cau hỏi cau hoi
Hiển thị thông báo
tốt,khá, kém
Thực đếm số câu hỏi
trong form hiển thị với
cách gán số điểm = số
câu/tong số câu
_assigment sof 01
End Sub
Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles PictureBox1.Click
End Sub
Private Sub ketqua_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Load
lblDiem.Text = diem1.ToString()
lblSoCau.Text = soluongcau.ToString()
End Sub
Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Label1.Click
End Sub
End Class
VIII:Ý nghĩa các form:
Với form đăng nhập: lưu lại thông tin đăng nhập như một của sổ giúp người dùng
Có thể dễ dàng tìm nhớ được thông tin,dùng trong nhiều lần(em chưa xây dựng
được thành công phần này vì còn nhiều thieu xot trong kiến thức cũng như kĩ
năng)
Form quan lý: giúp admin có thể nắm bắt dễ dàng thông tin được quản lí trong các
from đã được xây dựng.
Form thêm quiz: giúp người quản lí dụng thêm các câu hỏi trong ứng ụng
Form xem quiz : giúp admin nắm được thông tin các câu hỏi đã thêm vào trong
ứng dụng
Form làm quiz:giúp nguoi dùng làm các ứng dụng đã thêm.
Form kết quả: hiên thi kết quả được thông báo.
IX: Tổng Kết
Với ứng dụng trắc nghiệm trong giáo dục: chúng ta nhanh chóng đưa ra được
các thông tin ,kết quả , nếu kết hợp với csdl dã tạo thành một hệ thống các câu hỏi,
bài tập cho hệ thống 1 cơ sở giáo dục các cấp , tới những công việc quan trọng hơn.
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 22
_assigment sof 01
Nhưng trong ứng dụng nào cũng có nhiều khiếm khuyết cần được xây dựng, khắc
phục , cần được nâng cấp , sửa chữa.Nên với ứng dụng này mong các thầy cô hỗ trợ
nhiều về kiến thức cũng như kĩ năng xây dựng các ứng dụng mang tính thực tế cao có
thể áp dụng vào thực tế
Xin chân thành cảm ơn
Phố Môi, TP.Thanh Hoá,
ngày 27 tháng 10 năm 2013
Sinh viên thực hiện
Nguyễn Ngọc Trinh
Ứng dụng công nghệ thông tin trong giáo dục_ Thi trắc nghiệm Page 23