1. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
1
LÔØI CAÛM ÔN
Em xin baøy toû loøng bieát ôn saâu saéc ñeán thaày Nguyeãn Tieán Huy, duø
raát baän roän nhöng luoân taän tình höôùng daãn cho chuùng em trong suoát
quaù trình thöïc hieän luaän vaên.
Caûm ôn caùc thaày coâ giaùo, nhaát laø caùc giaûng vieân cuûa Khoa Coâng
ngheä thoâng tin, ñaõ giaûng daïy, truyeàn ñaït cho chuùng em nhöõng kieán
thöùc boå ích ñaõ trôû thaønh neàn taûng ñeå chuùng em coù theå thöïc hieän toát
luaän vaên.
Thaønh thaät caûm ôn vì söï ñoäng vieân vaø giuùp ñôõ cuûa gia ñình, baïn beø
daønh cho chuùng em trong suoát quaù trình thöïc hieän luaän vaên.
2. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
MỤC LỤC
PHẦN 1: MỞ ĐẦU..................................................................................................6
PHẦN 2: HIỆN TRẠNG VÀ YÊU CẦU...............................................................8
2.1. KHẢO SÁT HIỆN TRẠNG :.....................................................................................8
2.1.1. Hiện trạng về mặt tổ chức :..................................................................................8
2.1.2. Hiện trạng về mặt nghiệp vụ :..............................................................................9
2.2. XÁC ĐỊNH CÁC YÊU CẦU:..................................................................................10
2.2.1. Yêu cầu chức năng:............................................................................................10
2.2.2. Yêu cầu phi chức năng:......................................................................................11
PHẦN 3: MÔ HÌNH HOÁ....................................................................................12
3.1. SƠ ĐỒ SỬ DỤNG :..................................................................................................12
3.1.1. Sơ đồ thể hiện các chức năng chính của phần mềm: .........................................12
3.1.2. Diễn giải sơ đồ:..................................................................................................13
3.1.3. Ký hiệu :.............................................................................................................14
3.2. SƠ ĐỒ LỚP :............................................................................................................15
3.2.1. Sơ đồ lớp:...........................................................................................................15
3.2.2. Bảng thuộc tính các lớp đối tượng :...................................................................16
3.2.3. Sơ đồ luồng xử lý :.............................................................................................27
PHẦN 4: THIẾT KẾ PHẦN MỀM .....................................................................33
4.1. HỆ THỐNG CÁC LỚP ĐỐI TƯỢNG :...................................................................33
4.1.1. Mô hình tổng thể :..............................................................................................33
4.1.2. Danh sách các lớp đối tượng giao tiếp người dùng : .........................................35
4.1.3. Danh sách các lớp đối tượng xử lý chính : ........................................................36
4.1.4. Danh sách các lớp đối tượng truy xuất dữ liệu :................................................36
4.2. TỔ CHỨC LƯU TRỮ VÀ TRUY XUẤT CÁC ĐỐI TƯỢNG :.............................37
4.2.1. Danh sách các biến thành phần của từng đối tượng truy xuất dữ liệu:..............37
4.2.2. Danh sách các hàm thành phần của từng đối tượng truy xuất dữ liệu:..............38
4.3. THIẾT KẾ CÁC LỚP ĐỐI TƯỢNG XỬ LÝ CHÍNH : ..........................................40
4.3.1. Danh sách các biến thành phần của từng đối tượng xử lí chính:.......................40
4.3.2. Danh sách các hàm thành phần của từng đối tượng xử lí chính:.......................47
4.3.3. Các sơ đồ phối hợp: ...........................................................................................66
4.4. THIẾT KẾ CÁC MÀN HÌNH GIAO DIỆN CỦA PHẦN MỀM : ..........................69
4.4.1. Phân hệ giáo viên :.............................................................................................69
4.4.2. Phân hệ học sinh:...............................................................................................91
4.4.3. Các màn hình chung của hai phân hệ : ............................................................107
PHẦN 5: THỰC HIỆN PHẦN MỀM VÀ KIỂM TRA ...................................110
5.1. THỰC HIỆN PHẦN MỀM : ..................................................................................110
5.2. KIỂM TRA : ...........................................................................................................115
PHẦN 6: TỔNG KẾT.........................................................................................127
6.1. TỰ ĐÁNH GIÁ : ....................................................................................................127
6.2. HƯỚNG PHÁT TRIỂN : .......................................................................................129
2
3. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
DANH MỤC CÁC BẢNG
Bảng 3.1. Ký hiệu của sơ đồ sử dụng và sơ đồ lớp..............................................................14
Bảng 3.2. Bảng thuộc tính lớp đối tượng PTCoBan............................................................16
Bảng 3.3. Bảng thuộc tính lớp đối tượng PTBacI ...............................................................17
Bảng 3.4. Bảng thuộc tính lớp đối tượng PTBacII ..............................................................18
Bảng 3.5. Bảng thuộc tính lớp đối tượng PTBacISinCos....................................................19
Bảng 3.6. Bảng thuộc tính lớp đối tượng PTBacIISinCos...................................................19
Bảng 3.7. Bảng thuộc tính lớp đối tượng PTDoiXungSinCos.............................................20
Bảng 3.8. Bảng thuộc tính lớp đối tượng XuLiTinhToan....................................................20
Bảng 3.9. Bảng thuộc tính lớp đối tượng PhanSo ...............................................................21
Bảng 3.10. Bảng thuộc tính lớp đối tượng BaiGiai .............................................................21
Bảng 3.11. Bảng thuộc tính lớp đối tượng CoSoDuLieu.....................................................22
Bảng 3.12. Bảng thuộc tính lớp đối tượng XuLyDau..........................................................23
Bảng 3.13. Bảng thuộc tính lớp đối tượng BienDoiChuoi ..................................................24
Bảng 3.14. Bảng thuộc tính lớp đối tượng DoiCongThuc...................................................25
Bảng 3.15. Bảng thuộc tính lớp đối tượng LayCongThuc...................................................26
Bảng 4.1. Danh sách lớp đối tượng giao tiếp người dùng Phân hệ giáo viên......................35
Bảng 4.2. Danh sách lớp đối tượng giao tiếp người dùng Phân hệ học sinh.......................35
Bảng 4.3. Danh sách các lớp đối tượng xử lý chính............................................................36
Bảng 4.4. Danh sách các lớp đối tượng truy xuất dữ liệu....................................................36
Bảng 4.5. Danh sách các biến thành phần của từng đối tượng truy xuất dữ liệu.................37
Bảng 4.6. Danh sách các hàm thành phần của từng đối tượng truy xuất dữ liệu.................39
Bảng 4.7. Danh sách các biến thành phần của lớp đối tượng PTCoBan. ............................40
Bảng 4.8.Danh sách các biến thành phần của lớp đối tượng PTBacI..................................41
Bảng 4.9. Danh sách các biến thành phần của lớp đối tượng PTBacII. ..............................42
Bảng 4.10. Danh sách các biến thành phần của lớp đối tượng PTBacISinCos. ..................43
Bảng 4.11. Danh sách các biến thành phần của lớp đối tượng PTBacIISinCos..................43
Bảng 4.12. Danh sách các biến thành phần của lớp đối tượng PTDoiXungSinCos............44
Bảng 4.13. Danh sách các biến thành phần của lớp đối tượng PhatSinhDeTracNghiem....44
Bảng 4.14. Danh sách các biến thành phần của lớp đối tượng DoiCongThuc. ...................46
Bảng 4.15. Danh sách các biến thành phần của lớp đối tượng LayCongThuc....................46
Bảng 4.16. Danh sách các hàm thành phần của lớp đối tượng PTCoBan. ..........................52
Bảng 4.17. Danh sách các hàm thành phần của lớp đối tượng PTBacI...............................52
Bảng 4.18. Danh sách các hàm thành phần của lớp đối tượng PTBacII..............................57
Bảng 4.19. Danh sách các hàm thành phần của lớp đối tượng PTBacISinCos. ..................58
Bảng 4.20. Danh sách các hàm thành phần của lớp đối tượng PTBacIISinCos..................59
Bảng 4.21. Danh sách các hàm thành phần của lớp đối tượng PTDoiXungSinCos............60
Bảng 4.22. Danh sách các hàm thành phần của lớp đối tượng PhatSinhDeTracNghiem....63
Bảng 4.23. Danh sách các hàm thành phần của lớp đối tượng DoiCongThuc. ...................65
Bảng 4.24. Danh sách các hàm thành phần của lớp đối tượng LayCongThuc....................65
Bảng 4.25. Các sự kiện màn hình chính Phân hệ Giáo viên................................................71
Bảng 4.26. Các sự kiện màn hình soạn bài tập viết.............................................................78
Bảng 4.27. Các sự kiện màn hình soạn lý thuyết.................................................................81
Bảng 4.28. Các sự kiện màn hình Soạn đề trắc nghiệm. .....................................................86
Bảng 4.29. Các sự kiện màn hình Chấm bài........................................................................89
Bảng 4.30. Các sự kiện màn hình chính Phân hệ Học sinh. ................................................93
3
4. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
Bảng 4.31. Các sự kiện màn hình giải bài tập viết. .............................................................97
Bảng 4.32. Các sự kiện màn hình Xem lý thuyết. ...............................................................99
Bảng 4.33. Các sự kiện màn hình giải Bài tập Trắc nghiệm. ............................................105
Bảng 4.34. Các sự kiện màn hình Giới thiệu.....................................................................107
Bảng 4.35. Các sự kiện màn hình Gởi thư.........................................................................109
4
5. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
DANH MỤC CÁC HÌNH
Hình 3.1. Sơ đồ sử dụng. .....................................................................................................12
Hình 3.2. Sơ đồ lớp..............................................................................................................15
Hình 3.3. Sơ đồ luồng xử lý soạn bài tập viết......................................................................27
Hình 3.4. Sơ đồ luồng xử lý soạn đề trắc nghiệm................................................................28
Hình 3.5. Sơ đồ luồng xử lý soạn lý thuyết. ........................................................................28
Hình 3.6. Sơ đồ luồng xử lý chấm bài. ................................................................................29
Hình 3.7. Sơ đồ luồng xử lý giải bài tập viết.......................................................................30
Hình 3.8. Sơ đồ luồng xử lý giải đề trắc nghiệm.................................................................31
Hình 3.9. Sơ đồ luồng xử lý xem bài lý thuyết....................................................................32
Hình 4.1.Mô hình tổng thể phân hệ giáo viên. ....................................................................33
Hình 4.2. Mô hình tổng thể phân hệ học sinh......................................................................34
Hình 4.3. Sơ đồ phối hợp soạn bài tập viết..........................................................................66
Hình 4.4. Sơ đồ phối hợp soạn đề trắc nghiệm....................................................................66
Hình 4.5. Sơ đồ phối hợp sọa lý thuyết. ..............................................................................67
Hình 4.6. Sơ đồ phối hợp chấm bài. ....................................................................................67
Hình 4.7. Sơ đồ phối hợp giải bài tập viết...........................................................................67
Hình 4.8. Sơ đồ phối hợp giải đề trắc nghiệm. ....................................................................68
Hình 4.9. Sơ đồ phối hợp xem bài lý thuyết........................................................................68
Hình 4.102. Màn hình Soạn Lý Thuyết ...............................................................................78
Hình 4.110. Màn hình Hướng dẫn sử dụng. ......................................................................106
Hình 5.1. Tổ chức vật lý. ...................................................................................................110
Hình 5.2. Project ControlCongThuc..................................................................................110
Hình 5.3. Project FormThongBao......................................................................................111
Hình 5.4. Project PhanHeGV.............................................................................................111
Hình 5.5. Project PhanHeHS .............................................................................................112
Hình 5.6. Project XuLi_LuongGiac...................................................................................113
Hình 5.7. Project SetupPhanHeGV....................................................................................114
Hình 5.8. ProjectSetupPhanHeHS .....................................................................................115
5
6. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
PHẦN 1: MỞ ĐẦU
Ngày nay, ngành công nghệ thông tin trên thế giới đang trên đà phát triển
mạnh mẽ, và ngày càng ứng dụng vào nhiều lĩnh vực: kinh tế, khoa học kĩ thuật,
quân sự, y tế, giáo dục… và nó đã đáp ứng ngày càng nhiều yêu cầu của các lĩnh
vực này, để phục vụ cho nhu cầu của con người.
Ở nước ta, hòa nhập chung với sự phát triển ngành công nghệ thông tin và
ứng dụng vào các lĩnh vực của cuộc sống nhằm phục vụ các nhu cầu như: nghiên
cứu, học tập, lao động và giải trí… của con người. Nhà nước ta đã có những chính
sách cần thiết để đưa ngành công nghệ thông tin vào vị trí then chốt trong chiến
lược phát triển kinh tế của Đất nước.
Đặc biệt ngành công nghiệp phần mềm, một lĩnh vực thuộc ngành công nghệ
thông tin, được chú trọng phát triển mạnh để sản xuất những phần mềm có giá trị
đáp ứng nhu cầu hiện tại: xuất khẩu ra nước ngoài hoặc phục vụ cho các lãnh vực
khác trong nước. Để góp phần phát triển ngành công nghiệp phần mềm và phục vụ
cho các nhu cầu trong nước, trong đó có ngành giáo dục và đào tạo.
Song song đó, xã hội ngày càng phát triển, do đó yêu cầu chất lượng giáo
dục và đào tạo con người ngày càng cao hơn, để đáp ứng lại yêu cầu hiện có của xã
hội. Vì thế, hệ thống giáo dục và đào tạo ở nước ta hiện cũng không ngừng đổi mới
và hoàn thiện nhằm đào tạo ra những con người có khả năng chuyên môn cao phục
vụ trong mọi lĩnh vực của xã hội.
Với khả năng ứng dụng rộng rãi của ngành công nghệ thông tin, với chính
sách phát triển ngành công nghệ thông tin của nhà nước, với việc nâng cao chất
lượng giáo dục ở nước ta. Thì việc tin học hóa giáo dục (ứng dụng ngành công nghệ
thông tin vào ngành giáo dục) là phù hợp và thiết thực.
Để nâng cao chất lượng giáo dục phổ thông Bộ giáo dục đã cải tiến cách dạy
và học: tăng cường thiết bị dạy và học, thêm kiến thức vào một số sách giáo khoa,
thêm một số môn học mới vào chương trình học. Lượng kiến thức cần truyền đạt và
6
7. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
đòi hỏi học sinh nắm bắt tăng nhiều hơn. Trong khi đó, với lượng kiến thức như thế,
việc dạy của giáo viên và sự tiếp thu của một số học sinh ở trường, đôi khi không
đạt được những kết quả mong muốn. Vì lý do không đủ thời gian trên lớp để giáo
viên hướng dẫn cặn kẽ cho học sinh giải bài tập, nên một số học sinh không thể
hoặc gặp khó khăn để theo kịp chương trình học của mình. Chính vì vậy, việc tự
giải bài tập của học sinh ở nhà là việc hết sức khó khăn, nếu không muốn nói là đôi
khi không thể làm được nếu không có người hướng dẫn. Cho nên, một số học sinh
đã phải nhờ người hướng dẫn tại nhà (giáo viên kèm tại nhà; anh, chị, phụ huynh có
kiến thức về bài tập của con em mình), số học sinh còn lại không có điều kiện trên
thì đến lớp học thêm (hình thức phổ biến) của giáo viên bộ môn. Với lượng kiến
thức nhiều hơn trước đây, đòi hỏi học sinh và giáo viên phải đầu tư nhiều thời gian
và công sức hơn.
Song song với việc nâng cao chất lượng giáo dục và đào tạo, ngành công
nghệ thông tin đang phát triển mạnh mẽ, đang dần mở rộng hỗ trợ cho nhiều lĩnh
vực mới. Với khả năng trên, việc đưa tin học hỗ trợ cho lãnh vực giáo dục, trong đó
việc hỗ trợ cho việc giải bài tập của học sinh tại nhà là có thể thực hiện được.
Để giúp học sinh có khả năng tự giải bài tập mà không cần đến lớp học thêm,
không cần người hướng dẫn giải bài tập. Thì với một phần mềm hỗ trợ giải bài tập
trên máy tính tại nhà sẽ đáp ứng được cho học sinh những nhu cầu này. Và điển
hình là phần mềm hỗ trợ giải bài tập lượng giác mà chúng em đã nghiên cứu và thực
hiện.
7
8. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
PHẦN 2: HIỆN TRẠNG VÀ YÊU CẦU
2.1. KHẢO SÁT HIỆN TRẠNG :
2.1.1. Hiện trạng về mặt tổ chức :
Bao gồm thành phần giáo viên và học sinh.
2.1.1.1. Quan hệ giữa các thành phần :
Học sinh :
o Học bài và củng cố kiến thức.
o Làm bài tập về nhà mà giáo viên ra đề.
Giáo viên:
o Soạn bài giảng.
o Soạn bài tập cho học sinh giải.
o Soạn hướng dẫn giải bài tập.
o Chấm điểm bài làm của học sinh.
2.1.1.2. Quan hệ với các thành phần bên ngoài :
Học sinh :
o Tìm tài liệu học liên quan đến bài tập đang giải thông qua
sách, báo …. hay trao đổi với những người có biết kiến
thức liên quan đến phần bài tập đang giải như: bạn bè, thầy
cô, cha mẹ, anh chị…
o Đi đến lớp học thêm để củng cố kiến thức và nâng cao khả
năng giải bài tập.
Giáo viên :
o Tham khảo kiến thức liên quan đến bài giảng thông qua
sách báo… để soạn bài giảng, bài tập, bài giải.
8
9. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
2.1.2. Hiện trạng về mặt nghiệp vụ :
2.1.2.1. Học bài và củng cố các kiến thức đã học :
Những kiến thức đã học trên lớp, học sinh về nhà phải hiểu và
nhớ.
2.1.2.2. Làm bài tập :
Những bài tập làm ở nhà do giáo viên ra thêm, học sinh sẽ dựa vào
những kiến thức đã học, phương pháp giải để tự giải những bài tập
này.
2.1.2.3. Soạn bài giảng :
Trước giờ lên lớp dạy, giáo viên soạn bài giảng của mình từ sách
giáo khoa của bộ giáo dục và những tài liệu tham khảo khác.
2.1.2.4. Soạn bài tập của giáo viên :
Những bài tập cho học sinh làm, giáo viên có thể tự soạn hoặc lấy
từ sách giáo khoa, những tài liệu tham khảo.
2.1.2.5. Soạn bài giải :
Để đưa ra những hướng dẫn gợi ý giải bài tập cho học sinh, giáo
viên soạn ra thông qua kiến thức sẵn có của mình hay tham khảo
tài liệu.
2.1.2.6. Chấm điểm và nhận xét :
Giáo viên chấm điểm bài làm của học sinh, chấm từng bước giải
và cho điểm cụ thể mỗi bước.
9
10. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
2.2. XÁC ĐỊNH CÁC YÊU CẦU:
2.2.1. Yêu cầu chức năng:
2.2.1.1. Chức năng lưu trữ:
Lưu trữ phần bài tập:
o Đề bài, bài giải, đáp án của giáo viên và học sinh ứng với
bài tập phương trình, chứng minh đẳng thức và câu hỏi trắc
nghiệm.
Lưu trữ phần lý thuyết:
o Lý thuyết và phương pháp giải liên quan đến mỗi dạng bài
tập.
2.2.1.2. Chức năng tính toán :
Phát sinh tự động đề trắc nghiệm .
Đối với các bài tập phương trình có phương pháp giải như:
phương trình lượng giác bậc I; phương trình lượng giác bậc II;
phương trình bậc I đối với sin, cos; phương trình bậc II đối với sin,
cos; phương trình đối xứng với sin, cos thì máy có thể giải tự động
được.
Cho phép soạn bài tập, bài giải phương trình, chứng minh đẳng
thức, câu hỏi trắc nghiệm, bài lý thuyết thủ công.
2.2.1.3. Chức năng kết xuất :
Kết xuất đề bài, bài giải của bài tập phương trình, chứng minh
đẳng thức, đề trắc nghiệm, bài lý thuyết ra Word, máy in, qua
mail.
10
11. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
2.2.2. Yêu cầu phi chức năng:
2.2.2.1. Tính tiện dụng:
Giao diên trực quan, sinh động, tham khảo lí thuyết cho phép từng
bước hướng dẫn học sinh giải bài tập.
Dễ học và dễ sử dụng, phù hợp với môi trường giáo dục.
2.2.2.2. Tính tương thích :
Chạy trên các hệ điều hành Windows.
2.2.2.3. Tính hiệu quả:
Máy tính với CPU Pentium III 800, RAM 256MB.
Đĩa cứng 20GB.
2.2.2.4. Môi trường cài đặt :
Visual Basic. Net.
11
12. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
PHẦN 3: MÔ HÌNH HOÁ
3.1. SƠ ĐỒ SỬ DỤNG :
3.1.1. Sơ đồ thể hiện các chức năng chính của phần mềm:
Soan bai tap viet
Soan de trac nghiem
Soan ly thuyet
Giao vien
Cham bai
Giai bai tap viet
Giai de trac nghiem
Hoc sinh
Xem ly thuyet
Hình 3.1. Sơ đồ sử dụng.
12
13. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3.1.2. Diễn giải sơ đồ:
Phân hệ giáo viên:
o Soạn bài tập viết:
Soạn bài tập phương trình và chứng minh đẳng thức.
Cho phép lưu trữ, in, gởi thư các bài tập.
Soạn bài hướng dẫn và bài giải cho các bài tập.
Có thể tự động giải một số bài tập phương trình thuộc
các dạng Phương trình bậc I; Phương trình bậc II;
Phương trình bậc I sin, cos; Phương trình bậc II sin, cos;
Phương trình đối xứng sin,cos.
o Soạn đề trắc nghiệm:
Soạn bài tập, đề trắc nghiệm.
Cho phép lưu trữ, in, gởi thư các bài tập, đề trắc nghiệm.
Có thể tự động phát sinh đề trắc nghiệm.
o Soạn lý thuyết:
Soạn lý thuyết.
Cho phép lưu trữ, in, gởi thư nội dung các bài lý thuyết.
o Chấm bài:
Mở bài tập của học sinh, tiến hành chấm các bài tập.
Phân hệ học sinh:
o Giải bài tập viết:
Xem các bài tập phương trình, chứng minh đẳng thức.
Xem các bài hướng dẫn giải, các bài giải sẵn của giáo
viên (hoặc máy giải).
Cho phép lưu trữ, in, gởi thư các bài tập.
o Giải đề trắc nghiệm:
Tự động tạo đề trắc nghiệm.
Cho phép học sinh tiến hành làm bài tập trắc nghiệm.
Xem lại bài tập trắc nghiệm đã làm.
13
14. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
Cho phép lưu trữ, in, gởi thư đề trắc nghiệm.
o Xem bài lý thuyết:
Xem các bài lý thuyết.
Cho phép lưu trữ, in, gởi thư nội dung các bài lý thuyết.
3.1.3. Ký hiệu :
NewClass
Actor
NewUseCase
User Case
NewClass
NewUseCase
Actor thực hiện User Case
NewClass Lớp đối tượng
NewClass2NewClass Lớp quan hệ với lớp
NewClass2
NewClass Lớp New Class2 kế thừa từ lớp
New Class
Bảng 3.1. Ký hiệu của sơ đồ sử dụng và sơ đồ lớp.
14
16. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3.2.2. Bảng thuộc tính các lớp đối tượng :
3.2.2.1. Lớp đối tượng PTCoBan :
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 hamlg String Hàm lượng giác Gồm: sin, cos, tg, cotg
2 bien String Biến Dang ax+b
3 heso String Hệ số
4 loainghiem String Loại nghiệm loainghiem =”0” tính
theo radian;
loainghiem=”1” tính
theo độ
5 nghiemblvn String Nghiệm biện luận
vô nghiệm
6 nghiemblcn String Nghiệm biện luận
có nghiệm
7 bl Boolean Cho biết giải
phương trình có
biện luận hay
không.
bl=true có biện luận;
ngược lại không biện
luận
8 hsgoc String Hệ số góc
9 strBaiGiai String Bài giải
Bảng 3.2. Bảng thuộc tính lớp đối tượng PTCoBan
16
17. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3.2.2.2. Lớp đối tượng PTBacI :
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 a String Hệ số a của phương trình
2 b String Hệ số b của phương trình
3 hamlg String Hàm lượng giác Gồm: sin, cos,
tg, cotg
4 bien String Biến của phương trình Dạng ax+b
5 strBaiGiai String Bài giải
Bảng 3.3. Bảng thuộc tính lớp đối tượng PTBacI
17
18. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3.2.2.3. Lớp đối tượng PTBacII :
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 a String Hệ số a của phương trình
2 b String Hệ số b của phương trình
3 c String Hệ số c của phương trình
4 hamlg String Hàm lượng giác Gồm: sin, cos, tg,
cotg
5 bien String Biến của phương trình Dạng ax+b
6 strBaiGiai String Bài giải
7 loainghiem String Loại nghiệm loainghiem =”0”
tính theo
radian;
loainghiem=”1”
tính theo độ
8 gthople Double Giá trị hợp lệ của nghiệm
9 daupt String Dấu phương trình
Bảng 3.4. Bảng thuộc tính lớp đối tượng PTBacII
18
19. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3.2.2.4. Lớp đối tượng PTBacISinCos :
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 a String Hệ số a của phương trình
2 b String Hệ số b của phương trình
3 c String Hệ số c của phương trình
4 bien String Biến của phương trình Dạng ax+b
5 strBaiGiai String Bài giải
Bảng 3.5. Bảng thuộc tính lớp đối tượng PTBacISinCos
3.2.2.5. Lớp đối tượng PTBacIISinCos :
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 a String Hệ số a của phương trình
2 b String Hệ số b của phương trình
3 c String Hệ số c của phương trình
4 bien String Biến của phương trình Dạng ax+b
5 strBaiGiai String Bài giải
Bảng 3.6. Bảng thuộc tính lớp đối tượng PTBacIISinCos
19
20. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3.2.2.6. Lớp đối tượng PTDoiXungSinCos:
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 a String Hệ số a của phương trình
2 b String Hệ số b của phương trình
3 c String Hệ số c của phương trình
4 bien String Biến của phương trình Dạng ax+b
5 strBaiGiai String Bài giải
6 loaipt Int16 Loại phương trình loaipt=1
phưong trình
dạng sinx+cosx;
loaipt=0
phương trình
dạng sinx-cosx
Bảng 3.7. Bảng thuộc tính lớp đối tượng PTDoiXungSinCos
3.2.2.7. Lớp đối tượng XuLiTinhToan :
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 loaipt Int16 Loại phương trình loaipt=1 phưong
trình dạng sinx+cosx;
loaipt=0 phương
trình dạng sinx-cosx
Bảng 3.8. Bảng thuộc tính lớp đối tượng XuLiTinhToan
20
21. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3.2.2.8. Lớp đối tượng PhanSo :
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 strPS String Phân số
2 Tu String Tử
3 Mau String Mẫu
Bảng 3.9. Bảng thuộc tính lớp đối tượng PhanSo
3.2.2.9. Lớp đối tượng BaiGiai :
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 mDung Int16 Cho biết dừng bài giải
hay không
mDung=1
Dừng bài giải;
mDung=0
Tiếp tục bài giải
2 KetThucBaiGiai Int16 Cho biết đã kết thúc
bài giải hay chưa
KetThucBaiGiai
=1 Kết thúc
bài giải;
KetThucBaiGiai
=0 Chưa kết
thúc bài giải
3 strBaiGiai String Bài giải
4 txtBaiGiai RichTextBox Control dùng để xuất
bài giải
5 KieuXuat Int16 Kiểu xuất KieuXuat=0
Giải từng bước;
KieuXuat=1
Giải nhanh
Bảng 3.10. Bảng thuộc tính lớp đối tượng BaiGiai
21
22. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3.2.2.10. Lớp đối tượng CoSoDuLieu:
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 BaiHoc BaiLT Cấu trúc của bài lý
thuyết gồm các trường :
SoBai, NoiDung
2 De DeViet Cấu trúc của đề viết
gồm các trường : sobai,
debai, baigiaiGV,
baigiaiHS, loaibt
3 CauHoi DeTracNghiem Cấu trúc của đề trắc
nghiệm gồm các trường
: SoCau, A, B, C, D,
DapAn
4 pathBT String Lưu đường dẫn đến file
bài tập viết
5 pathTN String Lưu đường dẫn đến file
trắc nghiệm
6 pathBH String Lưu đường dẫn đến file
lý thuyết
Bảng 3.11. Bảng thuộc tính lớp đối tượng CoSoDuLieu
22
23. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3.2.2.11. Lớp đối tượng XuLyDau:
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 MangPhepCong
TruBac0(20)
ViTriDau Cấu trúc của ViTriDau gồm
các trường : dau, vitri.
Lưu mảng chứa vị trí các
phép cộng trừ bậc 01
của
một chuỗi.
2 SoLuongPhep
CongTruBac0
Integer Lưu số lượng các phép cộng
trừ bậc 0 có trong một chuỗi.
3 MangPhepNhan
ChiaBac0(50)
ViTriDau Lưu mảng chứa vị trí các
phép nhân chia bậc 0 của
một chuỗi.
4 SoLuongPhep
NhanChiaBac0
Integer Lưu số lượng phép nhân
chia bậc 0 có trong một
chuỗi.
5 HamLuongGiac() String Mảng chuỗi gồm các phần
tử :”sin”, “cos”, “cotg”, “tg”.
6 HamToanHoc() String Mảng chuỗi gồm các phần
tử : “sqrt”.
Bảng 3.12. Bảng thuộc tính lớp đối tượng XuLyDau
1
Các phép cộng trừ không nằm trong dấu ngoặc đơn của chuỗi.
23
24. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3.2.2.12. Lớp đối tượng BienDoiChuoi:
STT Thuộc tính Kiểu Diễn giải Ghi
chú
1 MangSo(5) MangChuaViTriSo Cấu trúc của
MangChuaViTriSo
bao gồm các trường
:gtri, vitri.
Lưu vị trí dấu nhân
liền trước các số có
trong chuỗi.
2 SoLuongSo Integer Lưu số lượng của
MangSo
3 MangGiaTriSQRT(5) MangChuaViTriSo Lưu giá trị các hàm
sqrt và vị trí của các
hàm sqrt đó.
4 SoLuongSQRT Integer Lưu số lượng của
MangGiaTriSQRT.
Bảng 3.13. Bảng thuộc tính lớp đối tượng BienDoiChuoi
24
25. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3.2.2.13. Lớp đối tượng DoiCongThuc :
STT Thuộc tính Kiểu Diễn giải Ghi
chú
1 MangHam(30) HAM_LG Cấu trúc của HAM_LG bao
gồm các trường : TenHam,
ViTri.
Mảng lưu vị trí và tên hàm
lượng giác có trong chuỗi.
2 mSoLuongHam Integer Lưu số lượng của MangHam.
3 Bien() Char Mảng chứa các giá trị biến
được dùng khi thay đổi biến
của các hàm lượng giác trong
chuỗi nhập vào.
Bao gồm các giá trị : “M”,
”N”, “O”, ”P”, “Q”, “R”,
“S”, “T”.
4 MangBien(10) BIEN_THAY_
THE
Cấu trúc của
BIEN_THAY_THE bao gồm
các trường sau: BienChinh,
ThayThe.
Mảng lưu trữ các biến thay
thế ứng với các biến ban đầu
của các hàm lượng giác.
5 mSoLuongBien Integer Lưu số lượng của MangBien.
Bảng 3.14. Bảng thuộc tính lớp đối tượng DoiCongThuc
25
26. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3.2.2.14. Lớp đối tượng LayCongThuc :
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 pathCongThuc String Lưu trữ đường dẫn chứa
file CongThuc để lấy công
thức lượng giác.
2 pathLayCongThuc String Lưu trữ đường dẫn chứa
file LayCongThuc để đọc
công thức từ file lên.
3 fCongThuc FileStream Đối tượng dùng để mở file
CongThuc.
4 fLayCongThuc FileStream Đối tượng dùng để mở file
LayCongThuc.
5 rs StreamReader Đối tượng dùng để đọc dữ
liệu trên file.
6 sw StreamWriter Đối tượng dùng để ghi dữ
liệu lên file.
7 MangCongThuc ArrayList Mảng chứa các công thức
lấy được.
Bảng 3.15. Bảng thuộc tính lớp đối tượng LayCongThuc
26
28. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
Soạn đề trắc nghiệm :
Hình 3.4. Sơ đồ luồng xử lý soạn đề trắc nghiệm.
Soạn lý thuyết:
Hình 3.5. Sơ đồ luồng xử lý soạn lý thuyết.
28
33. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
PHẦN 4: THIẾT KẾ PHẦN MỀM
4.1. HỆ THỐNG CÁC LỚP ĐỐI TƯỢNG :
4.1.1. Mô hình tổng thể :
4.1.1.1. Phân hệ giáo viên :
Hình 4.1.Mô hình tổng thể phân hệ giáo viên.
Diễn giải:
Phân hệ giáo viên gồm có một form chính là MainFormGV, từ MainFormGV sẽ
gọi đến các UserControl: TH_SoanBaiTapViet,TH_ChamBai, TH_SoanBaiLT,
TH_SoanDeTracNghiem. Trong đó, TH_SoanBaiTapViet sẽ gọi đến
UserControl TH_CongThuc; TH_SoanBaiTapViet gọi đến lớp PhuongTrinh,
TH_SoanDeTracNghiem gọi đến lớp PhatSinhDeTracNghiem. Tất cả các
UserControl đều gọi đến lớp CoSoDuLieu để giao tiếp với dữ liệu bên ngoài.
33
34. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.1.1.2. Phân hệ học sinh :
Hình 4.2. Mô hình tổng thể phân hệ học sinh.
Diễn giải:
Phân hệ học sinh gồm có một form chính là MainFormHS, từ MainFormHS sẽ
gọi đến các UserControl: TH_BaiTapViet, TH_BaiLT, TH_TracNghiem. Trong
đó, TH_BaiTapViet sẽ gọi đến UserControl TH_CongThuc; TH_BaiTapViet gọi
đến lớp PhuongTrinh, TH_TracNghiem gọi đến lớp PhatSinhDeTracNghiem.
Tất cả các UserControl đều gọi đến lớp CoSoDuLieu để giao tiếp với dữ liệu
bên ngoài.
34
35. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.1.2. Danh sách các lớp đối tượng giao tiếp người dùng :
4.1.2.1. Phân hệ giáo viên :
STT Tên Ý nghĩa
1 TH_SoanBaiTapViet Cho phép giáo viên soạn bài tập phương
trình và bài tập chứng minh đẳng thức cho
học sinh
2 TH_SoanBaiLT Cho phép giáo viên soạn bài lý thuyết
3 TH_SoanDeTracNghiem Cho phép giáo soạn đề trắc nghiệm
4 TH_ChamBai Cho phép giáo viên chấm bài giải của học
sinh
Bảng 4.1. Danh sách lớp đối tượng giao tiếp người dùng Phân hệ giáo viên.
4.1.2.2. Phân hệ học sinh :
STT Tên Ý nghĩa
1 TH_BaiTapViet Cho phép học sinh giải bài tập phương trình và
bài tập chứng minh đẳng thức
2 TH_BaiLyThuyet Cho phép học sinh xem bài lý thuyết
3 TH_TracNghiem Cho phép học sinh làm bài trắc nghiệm
Bảng 4.2. Danh sách lớp đối tượng giao tiếp người dùng Phân hệ học sinh.
35
36. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.1.3. Danh sách các lớp đối tượng xử lý chính :
STT Tên Ý nghĩa
1 PTCoBan Dùng để giải các phương trình cơ bản: sinx=a,
cosx=a, tgx=a, cotgx=a
2 PTBacI Dùng để giải phương trình dạng: asinx+b=0,
acosx+b=0, atgx+b=0, acotgx+b=0
3 PTBacII Dùng để giải phương trình dạng: asin-
2
x+bsinx+c=0, acos2
x+bcosx+c=0,
atg2
x+btgx+c=0, acotg2
x+bcotgx+c=0
4 PTBacISinCos Dùng để giải phương trình dạng:
asinx+bcosx=c
5 PTBacIISinCos Dùng để giải phương trình dạng:
asin2
x+bsinxcosx+ccos2
x=d
6 PTDoiXungSinCos Dùng để giải phương trình dạng:
a(sinx+cosx)+bsinxcosx=c
7 DoiCongThuc Dùng để đổi công thức ra dạng tương ứng với
dạng công thức lưu trong file CongThuc.txt.
8 LayCongThuc Dùng để lấy công thức tương ứng.
Bảng 4.3. Danh sách các lớp đối tượng xử lý chính.
4.1.4. Danh sách các lớp đối tượng truy xuất dữ liệu :
STT Tên Ý nghĩa
1 CoSoDuLieu Dùng để đọc ghi dữ liệu trên file
Bảng 4.4. Danh sách các lớp đối tượng truy xuất dữ liệu.
36
37. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.2. TỔ CHỨC LƯU TRỮ VÀ TRUY XUẤT CÁC ĐỐI TƯỢNG :
4.2.1. Danh sách các biến thành phần của từng đối tượng truy
xuất dữ liệu:
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 BaiHoc BaiLT Cấu trúc của bài lý thuyết gồm
các trường : SoBai, NoiDung
2 De DeViet Cấu trúc của đề viết gồm các
trường : sobai, debai, baigiaiGV,
baigiaiHS, loaibt
3 CauHoi DeTracNghiem Cấu trúc của đề trắc nghiệm gồm
các trường : SoCau, A, B, C, D,
DapAn
4 pathBT String Lưu đường dẫn đến file bài tập
viết
5 pathTN String Lưu đường dẫn đến file trắc
nghiệm
6 pathBH String Lưu đường dẫn đến file lý thuyết
Bảng 4.5. Danh sách các biến thành phần của từng đối tượng truy xuất dữ liệu.
37
38. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.2.2. Danh sách các hàm thành phần của từng đối tượng truy
xuất dữ liệu:
STT Tên hàm Kiểu
hàm
In Out
1 LuuDeViet Function BT:DeViet Boolean
2 MoDeViet Function BT:DeViet Boolean
3 BaiTapDangViet Function loai:Int
BT():DeViet
sobt:Int
Boolean
4 SachLyThuyet Function BH():BaiLT
sobh:Int
Boolean
5 NganHangCauHoi Function CH():DeTracNghiem
soch:Int
Boolean
6 ThemDeVaoSachBaiTap Function BT:DeViet Boolean
7 ThemBaiHocVaoSachLT Function BH:BaiLT Int
8 ThemCauHoiVaoNHCH Function CH:DeTracNghiem Boolean
9 Lay1DeDuocChon Funciton BT:DeViet
SoBT:String
loai:Int
Boolean
10 Lay1BaiHocDuocChon Function BH:BaiLT
SoBH:String
Boolean
11 Lay1CauHoiDuocChon Function CH:DeTracNghiem
SoCH:String
Boolean
12 KiemTraTrungBaiLy
Thuyet
Function bailythuyet:String Boolean
13 XoaBaiHoc Function SoBH:String Boolean
14 XoaBaiTap Function SoBT:String Boolean
38
39. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
15 XoaCauHoi Function SoCH:String Boolean
16 MoFileDeDoc Function path: String FileStream
17 DongFile Sub TenFile: FileStream
18 CapNhatSachBaiTap Function Int
19 CapNhatSachLyThuyet Function Int
20 CapNhatNHCH Function Int
21 KetXuatWord_Rtf Function txt:RichTextBox Boolean
22 KetXuatWord_Txt Function noidung:String Boolean
23 InWord Function tbox: RichTextBox
filename:String
Boolean
24 MoWord Function Boolean
25 LuuDeTracNghiem Function DeTN():DeTracNghiem
SoCH:Int
Boolean
26 DSCacCauHoiDuocLoc Function NHCH():DeTracNghiem
SoCH:Int
MangDangCH():String
SLDang:Int
Boolean
27 KiemTraTrungDangCau
Hoi
Function Dang:String
MangDangCH():String
SLDang:Int
Boolean
28 MoDeTracNghiem Function DeTN():DeTracNghiem
SoCH:Int
Int
Bảng 4.6. Danh sách các hàm thành phần của từng đối tượng truy xuất dữ liệu.
39
40. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.3. THIẾT KẾ CÁC LỚP ĐỐI TƯỢNG XỬ LÝ CHÍNH :
4.3.1. Danh sách các biến thành phần của từng đối tượng xử lí
chính:
4.3.1.1. Lớp đối tượng PTCoBan :
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 hamlg String Hàm lượng giác
2 bien String Biến
3 heso String Hệ số
4 loainghiem String Loại nghiệm loainghiem =”0” tính
theo radian;
loainghiem=”1” tính
theo độ
5 nghiemblvn String Nghiệm biện luận
vô nghiệm
6 nghiemblcn String Nghiệm biện luận
có nghiệm
7 bl Boolean Cho biết giải
phương trình có
biện luận hay
không.
bl=true có biện luận;
ngược lại không biện
luận
8 hsgoc String Hệ số góc
9 strBaiGiai String Bài giải
Bảng 4.7. Danh sách các biến thành phần của lớp đối tượng PTCoBan.
40
41. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.3.1.2. Lớp đối tượng PTBacI:
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 a String Hệ số a của phương trình
2 b String Hệ số b của phương trình
3 hamlg String Hàm lượng giác
4 bien String Biến của phương trình
5 strBaiGiai String Bài giải
Bảng 4.8.Danh sách các biến thành phần của lớp đối tượng PTBacI.
41
42. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.3.1.3. Lớp đối tượng PTBacII :
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 a String Hệ số a của phương
trình
2 b String Hệ số b của phương
trình
3 c String Hệ số c của phương
trình
4 hamlg String Hàm lượng giác
5 bien String Biến của phương trình
6 strBaiGiai String Bài giải
7 loainghiem String Loại nghiệm loainghiem =”0”
tính theo radian;
loainghiem=”1”
tính theo độ
8 gthople Double Giá trị hợp lệ của
nghiệm
9 daupt String Dấu phương trình
Bảng 4.9. Danh sách các biến thành phần của lớp đối tượng PTBacII.
42
43. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.3.1.4. Lớp đối tượng PTBacISinCos :
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 a String Hệ số a của phương trình
2 b String Hệ số b của phương trình
3 c String Hệ số c của phương trình
4 bien String Biến của phương trình
5 strBaiGiai String Bài giải
Bảng 4.10. Danh sách các biến thành phần của lớp đối tượng PTBacISinCos.
4.3.1.5. Lớp đối tượng PTBacIISinCos :
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 a String Hệ số a của phương trình
2 b String Hệ số b của phương trình
3 c String Hệ số c của phương trình
4 bien String Biến của phương trình
5 strBaiGiai String Bài giải
Bảng 4.11. Danh sách các biến thành phần của lớp đối tượng PTBacIISinCos.
43
44. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.3.1.6. Lớp đối tượng PTDoiXungSinCos:
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 a String Hệ số a của phương trình
2 b String Hệ số b của phương trình
3 c String Hệ số c của phương trình
4 bien String Biến của phương trình
5 strBaiGiai String Bài giải
6 loaipt Int16 Loại phương trình loaipt=1
phưong trình
dạng sinx+cosx;
loaipt=0
phương trình
dạng sinx-cosx
Bảng 4.12. Danh sách các biến thành phần của lớp đối tượng PTDoiXungSinCos.
4.3.1.7. Lớp đối tượng PhatSinhDeTracNghiem:
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 Lines String() Biến chứa số dòng của 1
chuỗi
2 spt Int Biến cho biết có bao
nhiêu dòng trong 1 chuỗi
Bảng 4.13. Danh sách các biến thành phần của lớp đối tượng PhatSinhDeTracNghiem.
44
45. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.3.1.8. Lớp đối tượng DoiCongThuc:
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 path String Chứa đường dẫn file
CongThuc.txt chứa các
công thức lượng giác.
2 MangHam(30) HAM_LG Chứa vị trí và tên hàm
lượng giác.
HAM_LG bao
gồm các thuộc
tính lưu trữ:
TenHam.
ViTri.
3 mSoLuongHam Integer Chứa số lượng hàm
lượng giác có trong
MangHam.
4 Bien() String Mảng chứa các biến
thay thế khi biến đổi
công thức.
Bao gồm các
giá trị: {“M”,
”N”, “O”, ”P”,
”Q”, “R”, “S”,
“T”}.
5 MangBien(10) BIEN_THAY
_THE
Mảng chứa giá trị biến
chính của công thức và
biến thay thế tương
ứng.
6 mSoLuongBien Integer chứa số lượng biến
trong MangBien.
45
46. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
7 ham() String chứa các hàm lượng
giác.
Bao gồm các
giá trị :{“sin”,
“cos”, “cotg”,
“tg”}
Bảng 4.14. Danh sách các biến thành phần của lớp đối tượng DoiCongThuc.
4.3.1.9. Lớp đối tượng LayCongThuc:
STT Thuộc tính Kiểu Diễn giải Ghi chú
1 fCongThuc FileStream Dùng để mở file
CongThuc.txt
2 rs StreamReader Dùng để dọc dữ liệu
trên file.
3 MangCongThuc ArrayList Dùng để lưu các công
thức tìm được.
Bảng 4.15. Danh sách các biến thành phần của lớp đối tượng LayCongThuc.
46
47. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.3.2. Danh sách các hàm thành phần của từng đối tượng xử lí
chính:
4.3.2.1. Lớp đối tượng PTCoBan :
STT Tên hàm Kiểu hàm In Out
1 GiaiBPTBacICoTriTuyetDoi Function hs:String
dau1:String
gt1:String
dau2:String
gt2:String
flag:Boolean
String
2 TruongHopTSTrenTuVoiHam
LGSinCos
Function tu:String
mau:String
String
3 TruongHopTSTrenTuVoiHam
LGTgCotg
Function String
4 BienLuanVoiThamSoTrenTu Function tu:String
mau:String
String
5 BienLuanTruongHopTuDuong Function tu:String
mau:String
temp:String
ts:String
String
6 BienLuanTruongHopTuAm Function tu:String
mau:String
temp:String
ts:String
String
7 TruongHopTSTrenMauVoi
HamLGSinCos
Function tu:String
mau:String
ts:String
String
47
48. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
8 TruongHopTSTrenMauVoiHa
mLGTgCotg
Function ts:String String
9 BienLuanVoiThamSoTrenMau Function tu:String
mau:String
String
10 TruongHopTSTrenTuMauVoi
HamLGTgCotg
Function tu:String
mau:String
String
11 LayGiaTriDacBiet Function bt:String String
12 XuLiTuChuaThamSo Sub tu:String
mau:String
tu1:String
mau1:String
so1:String
so2:String
13 DieuKienBienLuanVN Function String
14 DieuKienBienLuanCN Function tu1:String
tu2:String
mau:String
String
15 TruongHop2TuDeuCoTS Sub temp1:String
temp2:String
temp:String
n1:String
n2:String
n3:String
n4:String
n5:String
n6:String
n7:String
n8:String
48
49. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
16 TruongHopTSChiTrenTu1 Sub so:String
tu:String
mau:String
n1:String
n2:String
n3:String
n4:String
n5:String
17 TruongHopTSChiTrenTu2 Sub so:String
tu:String
mau:String
n1:String
n2:String
n3:String
n4:String
n5:String
18 XuLiNghiemGiaoTHBLVN Function nghiem:String String
19 XuLiNghiemGiaoTHBLCN Function nghiem:String String
20 GiaoNghiemTH2TuDeuCoTS Function n1:String
n2:String
n3:String
n4:String
n5:String
n6:String
n7:String
n8:String
String
49
50. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
21 GiaoNghiemTHTSChiTrenTu1 Function n1:String
n2:String
n3:String
n4:String
n5:String
String
22 GiaoNghiemTHTSChiTrenTu2 Function n1:String
n2:String
n3:String
n4:String
n5:String
String
23 TruongHopPTVN Function String
24 TruongHopPTCN Function temp1:String
temp2:String
temp:String
so1:String
so2:String
String
25 TruongHopTSTrenTuMauVoi
HamLGSinCos
Function tu:String
mau:String
String
26 BienLuanVoiThamSoTrenTu_
Mau
Function tu:String
mau:String
String
27 BienLuanTheo_m Function String
28 KiemTraTonTaiHamLG Function hs:String Boolean
29 KiemTraHeSoCoHamLGThoa Function hso:String Boolean
30 TachHeSoRaKhoiPi Function hso:String String
31 TaoGocDoi Function goc:String String
32 GocCuaHamLGDoi Function hso:String String
33 ThemNgoacDonVaoHamLG Function hlg:String
sokt:Int
String
50
51. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
34 XacDinhGocHamLG Sub hso:String
hlg:String
35 XuLiHamLGThoa Function hso:String String
36 XacDinhHeSoK Sub
37 XacDinhHeSoGocHamSinCos Function goc1:String
goc2:String
goc3:String
goc4:String
String
38 XacDinhHeSoGocHamTgCotg Function goc1:String
goc2:String
String
39 HamSin Function String
40 HamCos Function String
41 HamTg Function String
42 HamCotg Function String
43 DoiSangHamLuongGiac Function String
44 KiemTraHeSo Function Boolean
45 XuLiBien Function String
46 TruongHopDoiSangDuocHam
LG
Function hlg:String
sbien:String
String
47 LayNghiemTheoLoaiNghiem Function goc:String String
48 TruongHopKhongDoiSangDuo
cHamLG
Function sbien:String String
49 Giaipt Function co:Boolean String
50 TruongHopDacBietHamSin Function String
51 TruongHopDacBietHamCos Function String
52 TruongHopDacBietHamTg Function String
53 TruongHopDacBietHamCoTg Function String
54 TruongHopDacBiet Function String
51
52. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
55 GiaiPhuongTrinhCoBan Function String
Bảng 4.16. Danh sách các hàm thành phần của lớp đối tượng PTCoBan.
4.3.2.2. Lớp đối tượng PTBacI :
STT Tên hàm Kiểu hàm In Out
1 NhapPhuongTrinh Sub hsa:String
hsb:String
hsc:String
sbien:String
hlg:String
gt_hople:Double
2 Xuat Function String
3 XacDinhLoaiNghiem Sub
4 TapXacDinh Function String
5 TruongHopDacBiet Function String
6 NhapPhuongTrinhCoBan Sub hso:String
7 TinhHeSo Function String
8 GiaiPhuongTrinh Sub
Bảng 4.17. Danh sách các hàm thành phần của lớp đối tượng PTBacI.
52
53. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.3.2.3. Lớp đối tượng PTBacII :
STT Tên hàm Kiểu hàm In Out
1 NhapPhuongTrinh Sub hsa:String
hsb:String
hsc:String
sbien:String
hlg:String
gt_hople:Doubl
e
2 Xuat Function String
3 XacDinhLoaiNghiem Sub
4 XuLiCacHeSoPT Sub hsa:String
hsb:String
hsc:String
5 ChuyenPTLuongGiacVePTBac
II
Function hsa:String
hsb:String
hsc:String
String
6 LayMauCacHeSoPT Sub mau_a:String
mau_b:String
mau_c:String
7 KiemTraPTCoThamSo Function hsa:String
hsb:String
hsc:String
Boolean
8 TinhLaiNghiem Function nghiem:String Boolean
9 NhapPhuongTrinhCoBan Sub heso:String
10 GiaiPhuongTrinh Sub
11 TinhNghiemKep Function hsa:String
hsb:String
String
53
54. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
12 KiemTraNghiemHopLe Function gtnghiem:String Boolean
13 TruongHop2NghiemKhongHo
pLe
Function nghiem1:String
nghiem2:String
String
14 TruongHop2NghiemHopLe Function nghiem1:String
nghiem2:String
String
15 TruongHop1NghiemHopLe Function nghiem1:String
nghiem2:String
sttn:Int
String
16 GiaiKhongBL_DeltaBangKhon
g
Function nghiemkep:Stri
ng
String
17 GiaiKhongBL_DeltaLonHonK
hong
Function nghiem1:String
nghiem2:String
String
18 GiaiKhongBL_DeltaNhoHonK
hong
Function String
19 GiaiPTKhongBienLuan Function hsa:String
hsb:String
hsc:String
String
20 TruongHop2NghiemCoTS Function nghiem1:String
nghiem2:String
String
21 TruongHopNghiem1HopLe Function nghiem1:String
nghiem2:String
String
22 TruongHopNghiem2HopLe Function nghiem1:String
nghiem2:String
String
23 TruongHopNghiem1KhongTS Function nghiem1:String
nghiem2:String
String
24 TruongHopNghiem2KhongTS Function nghiem1:String
nghiem2:String
String
54
55. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
25 GiaiBL_DeltaKhongTSBangK
hong
Function nghiemkep:Stri
ng
String
26 GiaiBL_DeltaKhongTSLonHo
nKhong
Function nghiem1:String
nghiem2:String
String
27 GiaiBL_DeltaKhongTSNhoHo
nKhong
Function String
28 BienLuanDeltaKhongTS Function nghiem1:String
nghiem2:String
delta:String
String
29 KetLuan Function blvn:String
blcn:String
ten:String
String
30 GiaiUngVoiNghiemKep Function nghiemkep_t:St
ring
nghiemkep_m:S
tring
String
31 GiaiBL_DeltaCoTSBang
Khong
Function delta:String String
32 GiaiBL_DeltaCoTSLonHon
Khong
Function nghiem1:String
nghiem2:String
delta:String
String
33 BienLuanUngVoi1NghiemT Function nghiemkep_t:St
ring
nghiemkep_m:S
tring
String
34 GiaiBL_DeltaCoTSNhoHon
Khong
Function delta:String String
55
56. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
35 BienLuanDeltaCoTS Function nghiem1:String
nghiem2:String
delta:String
String
36 GiaiPTBienLuanTheoM Function hsa:String
hsb:String
hsc:String
String
37 XuLiNghiem Function hsa:String
hsb:String
String
38 TinhNghiem Function hsa:String
hsb:String
candelta:String
dau:String
String
39 TinhDelta Function hsa:String
hsb:String
hsc:String
String
40 TinhCanDelta Function delta:String String
41 BPTBacII_DeltaBangKhong Function hsa:String
hsb:String
dau:String
String
42 BPTBacII_DeltaAm Function hsa:String
dau:String
String
43 BPTBacII_DeltaDuong Function hsa:String
hsb:String
dau:String
delta:String
String
44 GiaiBPTBacII Function hsa:String
hsb:String
hsc:String
dau:String
String
56
57. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
45 GiaiPTBacII Function hsa:String
hsb:String
hsc:String
nghiem1:String
nghiem2:String
String
Bảng 4.18. Danh sách các hàm thành phần của lớp đối tượng PTBacII.
4.3.2.4. Lớp đối tượng PTBacISinCos :
STT Tên hàm Kiểu hàm In Out
1 NhapPhuongTrinh Sub hsa:String
hsb:String
hsc:String
sbien:String
hlg:String
gt_hople:Doubl
e
2 Xuat Function String
3 XacDinhLoaiNghiem Sub
4 NhapPhuongTrinhCoBan Sub hamlg:String
sbien:String
heso:String
5 DoiSangHamTg Function heso:String
gocb:String
String
6 RutGonPTLG Function hsba:String
hsca:String
String
7 TiSoLuongGiac Function goc:String String
8 TaoHamCos Function goc:String String
9 THHeSoVPCoTS Function hsca:String
hamcos:String
String
57
58. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
10 THHeSoVPKhongTS Function hsca:String
hamcos:String
String
11 TinhHeSoVePhai Function hsca:String
goc:String
String
12 TaoBienCuaPTMoi Function goc:String
sbien:String
String
13 PTSauKhiThayGiaTri Function goc:String
hsca:String
hs:String
sbien:String
String
14 BienDoiPhuongTrinh Function heso:String
sbien:String
String
15 KiemTraCacHeSoPT Function Boolean
16 BinhPhuongCacHeSo Sub abp:String
bbp:String
cbp:String
17 DieuKienCoNghiem Function bieuthuc:String String
18 GiaiPTKhongBL Function heso:String
sbien:String
String
19 BienLuan Function nghiem_m:Strin
g
heso:String
sbien:String
String
20 GiaiPTCoBL Function heso:String
sbien:String
String
21 GiaiPhuongTrinh Sub
Bảng 4.19. Danh sách các hàm thành phần của lớp đối tượng PTBacISinCos.
58
59. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.3.2.5. Lớp đối tượng PTBacIISinCos :
STT Tên hàm Kiểu hàm In Out
1 NhapPhuongTrinh Sub hsa:String
hsb:String
hsc:String
sbien:String
hlg:String
gt_hople:Double
2 Xuat Function String
3 XacDinhLoaiNghiem Sub
4 XuLiHeSo Function hso:String
co:Boolean
String
5 BienDoiPhuongTrinh Function hsa:String
hsb:String
hsc:String
String
6 NhapPhuongTrinhBacII Sub
7 NhapPhuongTrinhBacI Sub
8 TruongHopHeSoAKhacKhong Function nghiem_x:String String
9 TruongHopHeSoABangKhong Function nghiem_x:String String
10 GiaiPhuongTrinh Sub
Bảng 4.20. Danh sách các hàm thành phần của lớp đối tượng PTBacIISinCos.
59
60. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.3.2.6. Lớp đối tượng “PTDoiXungSinCos”:
STT Tên hàm Kiểu hàm In Out
1 NhapPhuongTrinh Sub hsa:String
hsb:String
hsc:String
sbien:String
hlg:String
gt_hople:Doubl
e
2 Xuat Function String
3 XacDinhLoaiNghiem Sub
4 DatAnPhu Function String
5 XuLiCacHeSoPT Function hsa:String
hsb:String
hsc:String
String
6 BienDoiPhuongTrinh Function hsa:String
hsb:String
hsc:String
String
7 TaoBien Function String
8 NhapPhuongTrinhBacII Sub
9 KiemTraPTCoThamSo Function hsa:String
hsb:String
hsc:String
Boolean
10 GiaiPhuongTrinh Sub
Bảng 4.21. Danh sách các hàm thành phần của lớp đối tượng PTDoiXungSinCos.
60
61. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.3.2.7. Lớp đối tượng PhatSinhDeTracNghiem:
STT Tên hàm Kiểu hàm In Out
1 PhatSinhCauHoi Sub CH:DeTracNghiem
2 GiaiPhuongTrinh Function hsa:String
hsb:String
hsc:String
hlg:String
bien:String
gthople:String
loaiPT:Int
String
3 PhatSinhDapAnDung Sub CH:DeTracNghiem
Nghiem:String
4 PhatSinhCauHoi_PTBacI Sub CH:DeTracNghiem
5 PhatSinhCauHoi_PTBacII Sub CH:DeTracNghiem
6 PhatSinhCauHoi_PTBacISin
Cos
Sub CH:DeTracNghiem
7 PhatSinhCauHoi_PTBacIISin
Cos
Sub CH:DeTracNghiem
8 PhatSinhCauHoi_PTDoiXung
SinCos
Sub CH:DeTracNghiem
9 TachDong Sub baigiai:String
10 LayNghiem Function baigiai:String
loaiPT:String
String
11 BoKhoangTrangDauDong Function nghiem:String String
12 LayNghiem_PTBacI_PTBacI
SinCos
Function sodong: int String
13 LayNghiem_PTBacII_PTBac
IISinCos_PTDXSinCos
Function sodong: int String
61
62. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
14 LayNghiem_PTBacII_PTBac
IISinCos_PTDXSinCos
Function sodong: int String
15 PhatSinhDapAnSai Sub CH:DeTracNghiem
16 PhatSinhNghiemSai Function String
17 PhatSinhNghiem Function String
18 PhatSinhPhanTu Function gt:String String
19 XacDinhSoNghiem Function sodong:Int
vt:Int
String
20 TaoPTBacI Function hsa:String
hsb:String
hsc:String
hlg:String
bien:String
String
21 TaoPTBacII Function hsa:String
hsb:String
hsc:String
hlg:String
bien:String
String
22 TaoPTBacISinCos Function hsa:String
hsb:String
hsc:String
hlg:String
bien:String
String
23 TaoPTBacIISinCos Function hsa:String
hsb:String
hsc:String
hlg:String
bien:String
String
62
63. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
24 TaoPTDoiXungSinCos Function hsa:String
hsb:String
hsc:String
hlg:String
bien:String
String
25 PhatSinhBien Function String
26 PhatSinhHamLG Function String
27 PhatSinhHeSo Function String
Bảng 4.22. Danh sách các hàm thành phần của lớp đối tượng PhatSinhDeTracNghiem.
4.3.2.8. Lớp đối tượng DoiCongThuc:
STT Tên hàm Kiểu hàm In Out
1 DemHam Sub str: String
2 SapXepLaiMangHam Sub
3 ChuanHoa Function str: String String
4 KiemTraCoHamLG Function chuoi: String Integer
5 ThemDauNgoacDon
VaoBien
Sub
6 KiemTraCoPhepTinh Function chuoi: String Boolean
7 ThayBien Function str: String
TenBien: String
String
8 BienDoiBieuThuc Function chuoi: String String
9 BieuThucCoNhieuHam
LG
Function chuoi: String String
10 BieuThucCoNhieuHam
LG_1
Function chuoi: String
kieu: Integer
String
11 BieuThucCoNhieuHam
LG_2
Function chuoi: String String
12 PhanLoai Function chuoi: String String
63
64. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
13 BieuThucLon Function chuoi: String String
14 KiemTraKyTuLaPhep
Tinh
Function ktu: Char Boolean
15 BieuThucNho Function chuoi: String
TenHam: String
String
16 NhanDangKyTuDac
Biet
Function chuoi: String Integer
17 BieuThucCo1HamLG Function chuoi: String String
18 BieuThucCo1Ham
LG_1
Function chuoi: String String
19 BieuThucCo1Ham
LG_2
Function chuoi: String String
20 BieuThucKhongCoMu
VaCo1HamLG
Function chuoi: String String
21 BieuThucCoMuVaCo1
HamLG
Function chuoi: String String
22 HamKhongCoDau
NgoacDon
Function chuoi: String
TenHam: String
String
23 HamCoDauNgoacDon Function chuoi: String String
24 LayBienCongThucBac Function chuoi: String String
25 LayBienCongThuc
TongHieu
Function chuoi: String String
26 LayBienCongThucDoi Function chuoi: String String
27 PhucHoiBien Function str: String String
28 RutGonBien Function chuoi: String String
29 RutGonBien_2 Function chuoi: String String
30 RutGonHeSoCuaBien Function chuoi: String String
31 RutGonBien_3 Function chuoi: String String
64
65. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
32 KiemTraDangBien Function chuoi: String Boolean
33 KiemTraDang_1 Function chuoi: String Boolean
34 GanDau Function chuoi: String
d1:Char
d2: Char
String
35 LayHeSo Function chuoi: String String
36 LayViTriDauChiaBac0 Function chuoi: String Integer
37 RutGonBien_1 Function chuoi: String String
38 BoDauNhan Function chuoi: String String
39 BoDau Function chuoi: String String
40 BoDauNgoacDonKhi
CoDauChia
Function chuoi: String String
41 LayHamLuongGiacDau
Tien
Function chuoi: String Integer
42 ChuanHoaBien Function chuoi: String String
43 LayMangPhanTuBac0 Function chuoi: String Arraylist
44 PhanTichPhanTu Function chuoi: String Arraylist
Bảng 4.23. Danh sách các hàm thành phần của lớp đối tượng DoiCongThuc.
4.3.2.9. Lớp đối tượng LayCongThuc:
STT Tên hàm Kiểu hàm In Out
1 Mang_CT Property Arraylist Arraylist
2 LayVePhai Function txtLine: String String
3 LayVeTrai Function txtLine: String String
4 LaySTTCuaCongThuc Function txtLine: String Integer
5 BoSoDanh Function str: String String
6 DuaCongThucVao
Mang
Sub str: String
Bảng 4.24. Danh sách các hàm thành phần của lớp đối tượng LayCongThuc.
65
66. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.3.3. Các sơ đồ phối hợp:
4.3.3.1. Phân hệ giáo viên:
Soạn bài tập viết :
Hình 4.3. Sơ đồ phối hợp soạn bài tập viết.
Soạn đề trắc nghiệm:
Hình 4.4. Sơ đồ phối hợp soạn đề trắc nghiệm.
66
67. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
Soạn lý thuyết:
Hình 4.5. Sơ đồ phối hợp sọa lý thuyết.
Chấm bài:
Hình 4.6. Sơ đồ phối hợp chấm bài.
4.3.3.2. Phân hệ học sinh :
Giải bài tập viết:
Hình 4.7. Sơ đồ phối hợp giải bài tập viết.
67
68. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
Giải đề trắc nghiệm:
Hình 4.8. Sơ đồ phối hợp giải đề trắc nghiệm.
Xem bài lý thuyết:
Hình 4.9. Sơ đồ phối hợp xem bài lý thuyết.
68
69. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.4. THIẾT KẾ CÁC MÀN HÌNH GIAO DIỆN CỦA PHẦN
MỀM :
4.4.1. Phân hệ giáo viên :
4.4.1.1. Màn hình chính :
a. Nội dung :
Hình 4.10. Màn hình chính Phân hệ giáo viên.
69
70. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
b. Danh sách các biến cố và xử lý tương ứng trên màn hình:
STT Biến Cố Ý Nghĩa Xử Lý Tương Ứng Lớp Xử Lý
1 Chọn button
Hướng Dẫn
Sử Dụng
trong
ToolMenu
Trợ Giúp.
Xem phần
hướng dẫn
sử dụng
của phần
mềm.
(HuongDanSuDung)
Hiển thị phần hướng dẫn
sử dụng phần mềm.
MainFormGV
2 Chọn button
Giới thiệu
trong
ToolMenu
Trợ Giúp.
Xem phần
giới thiệu
về phần
mềm.
(GioiThieu)
Hiển thị form Giới thiệu
về phần mềm.
MainFormGV
3 Chọn thanh
ToolMenu
Bài tập viết.
Chọn phần
Phương
Trình.
(XuLiChucNangNhom
BaiTapViet)
Các button trong
ToolMenu Bài tập viết và
màn hình Bài tập viết sẽ
được hiển thị.2
MainFormGV
4 Chọn thanh
ToolMenu
Trắc
Nghiệm.
Chọn phần
Trắc
Nghiệm.
(XuLiChucNangNhom
TracNghiem)
Các button trong
ToolMenu Trắc Nghiệm
và màn hình Trắc
Nghiệm sẽ được hiển thị.3
MainFormGV
2
Xem mục 4.4.1.2 để biết rõ thêm.
3
Xem mục 4.4.1.4 để rõ thêm.
70
71. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
5 Chọn thanh
ToolMenu
Lý Thuyết.
Chọn phần
Lý Thuyết.
(XuLiChucNangNhom
LyThuyet)
Các button trong
ToolMenu Lý Thuyết và
màn hình Lý Thuyết sẽ
được hiển thị.4
MainFormGV
6 Chọn thanh
ToolMenu
Chấm Bài
Chọn phần
Chấm Bài
(XuLiChucNangNhom
ChamBai)
Các button trong
ToolMenu Chấm Bài và
màn hình Chấm Bài sẽ
được hiển thị.5
MainFormGV
7 Chọn
MenuItem
Hệ Thống
Thoát
Thoát khỏi
phần mềm.
(ThoatKhoiChuongTrinh)
Thoát khỏi chương trình.
MainFormGV
8 Chọn
MenuItem
Trợ Giúp
Hướng Dẫn
Sử Dụng.
Xem phần
Hướng Dẫn
Sử Dụng.
(HuongDanSuDung)
Hiển thị phần hướng dẫn
sử dụng phần mềm.
MainFormGV
9 Chọn
MenuItem
Trợ Giúp
Giới Thiệu.
Xem phần
Giới Thiệu
về phần
mềm.
(GioiThieu)
Hiển thị form Giới thiệu
về phần mềm.
MainFormGV
Bảng 4.25. Các sự kiện màn hình chính Phân hệ Giáo viên.
4
Xem mục 4.4.1.3 để rõ thêm.
5
Xem mục 4.4.1.5 để rõ thêm.
71
73. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
b. Danh sách các biến cố và xử lý tương ứng trên màn hình:
STT Biến Cố Ý Nghĩa Xử Lý Tương Ứng Lớp Xử Lý
1 Nhấn button
Mở Đề Bài
Mở đề bài
tập.
(MoDeBai)
Hiển thị from Open
để mở file
BaiTap.lg
Khi mở được bài tập
thì các button khác
trong thanh
ToolMenu sẽ được
hiển thị.
TH_SoanBaiTapViet
2 Nhấn button
Lưu Đề Bài.
Lưu đề bài. (LuuDebai)
Hiển thị form
SaveAs để cho phép
lưu đề bài vào file
được chọn.
TH_SoanBaiTapViet
3 Nhấn button
Thêm Bài
Tập.
Thêm bài tập
đang soạn
vào
SachBaiTap
(ThemBaiTap)
Lưu bài tập mà giáo
viên đang soạn vào
SachBaiTap.lg và
cập nhật lại cây bài
tập trên ExplorerBar
Sách bài tập.
Sau khi thêm hiện
thông báo là đã thêm
bài tập.
TH_SoanBaiTapViet
73
74. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4 Nhấn button
Sửa Bài
Tập
Sửa lại bài
tập.
(SuaBaiTap)
Cập nhật lại thông
tin bài tập mà giáo
viên đang soạn và
cập nhật lại cây bài
tập trên ExplorerBar
Sách Bài Tập.
Sau khi cập nhật
hiện thông báo là đã
cập nhật thông tin
bài tập.
TH_SoanBaiTapViet
5 Chọn Dạng
bài tập
Chọn dạng
bài tập.
Chọn dạng bài tập. TH_SoanBaiTapViet
6 Nhấn button
Xóa Bài Tập
Xóa bài tập
đang mở.
(XoaBaiTap)
Hiển thị form
Thông Báo để xác
định lại là giáo viên
có muốn xóa bài tập
đang mở hay không.
Nếu có thì tiến hành
xóa thông tin về bài
tập đang mở trên
SachBaiTap.lg và
cập nhật lại cây bài
tập trên ExplorerBar
Sách Bài Tập.
TH_SoanBaiTapViet
74
75. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
7 Nhấn button
Máy Giải
Cho máy
giải bài tập
đang soạn.
(MayGiai)
Thực hiện giải
phương trình đã cho.
Nếu không giải
được thì sẽ hiện
form Thông Báo
báo là “Máy không
có khả năng giải!”.
Nếu màn hình ở chế
độ Giải Từng Bước
thì hiển thị button
Dừng Giải và làm
mờ button Máy
Giải.
Máy chỉ có thể giải
5 dạng bài: Phương
trình bậc I; Phương
trình bậc II; Phương
trình bậc I sin, cos;
Phương trình bậc II
sin, cos; Phương
trình đối xứng sin
cos.
TH_SoanBaiTapViet
8 Nhấn button
Dừng Giải
Cho máy
ngừng việc
giải bài tập.
(DungGiai)
Làm mờ button
Dừng Giải.
Hiển thị button Tiếp
Tục Giải.
TH_SoanBaiTapViet
75
76. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
9 Nhấn button
Tiếp Tục
Giải.
Cho máy
tiếp tục
(TiepTucGiai)
Làm mờ button
Tiếp Tục Giải.
Hiển thị button
Dừng Giải.
TH_SoanBaiTapViet
10 Nhấn button
Kết Xuất Ra
Word.
Kết xuất bài
tập và bài
giải ra
Word.
(KetXuatWord)
Lấy nội dung đề bài
và bài giải trên màn
hình đưa ra Word.
TH_SoanBaiTapViet
11 Nhấn button
In.
In bài tập. (InDeBai)
In nội dung đề bài
đang soạn.
TH_SoanBaiTapViet
12 Nhấn button
Gởi Thư.
Gởi nội
dung bài tập
và bài giải
qua email.
(GoiThu)
Kết xuất nội dung đề
bài và bài giải đang
hiển thị trên màn
hình lên form Gởi
Thư để tiến hành
gởi thư qua email.
TH_SoanBaiTapViet
13 Nhấn tab Bài
Hướng Dẩn
Soạn hay
xem bài
hướng dẫn.
Hiển thị bài hướng
dẫn mà giáo viên đã
soạn đồng thời cho
phép cập nhật hay
soạn mới bài hướng
dẫn.
TH_SoanBaiTapViet
76
77. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
14 Nhấn tab Bài
Giải Của
Máy Hoặc
GV.
Soạn hay
xem bài tập
giải.
Hiển thị bài giải nếu
là bài tập được chọn
từ SachBaiTap và
giáo viên đã giải.
Đồng thời cho phép
giáo viên cập nhật lại
bài giải đó.
Nếu là bài tập mới thì
cho phép giáo viên
soạn bài giải hoặc
cho máy giải.
TH_SoanBaiTapViet
15 Chọn radio
Giải Từng
Bước.
Chọn giải
từng bước.
Hiển thị bài giải khi
mày giải một cách
tuần tự theo từng
bước giải.
TH_SoanBaiTapViet
16 Chọn radio
Giải Nhanh
Chọn giải
nhanh.
Hiển thị ngay tất cả
các bước giải của bài
giải.
TH_SoanBaiTapViet
17 Nhấn
ExplorerBar
Sách Bài
Tập.
Xem sách
bài tập.
Hiển thị số bài tập đã
có trong SachBaiTap
và cho phép giáo viên
chọn một trong các
đề bài sẵn có.
TH_SoanBaiTapViet
77
78. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
18 Nhấn dấu = Lấy công
thức tương
ứng với
công thức
nhập trong
textbox
Công thức.
(TinhCongThuc)
Lấy và hiển thị các
công thức tương ứng
với công thức được
nhập vào textbox
công thức trong
combobox bên phải
dấu =.
TH_CongThuc
Bảng 4.26. Các sự kiện màn hình soạn bài tập viết.
4.4.1.3. Màn hình soạn lý thuyết:
a. Nội dung :
Hình 4.102. Màn hình Soạn Lý Thuyết
78
79. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
b. Danh sách các biến cố và xử lý tương ứng trên màn hình:
STT Biến Cố Ý Nghĩa Xử Lý Tương Ứng Lớp Xử Lý
1 Nhấn button
Soạn Lý
Thuyết.
Chọn phần
Soạn Lý
Thuyết.
(SoanLyThuyet)
Hiện form SaveAs lên để
cho giáo viên nhập vào
tên file và chọn địa chỉ sẽ
lưu, sau đó tiến hành mở
Word với tên file đã được
tạo và cho phép giáo viên
Soạn Lý Thuyết trên
Word.
Nếu mở không được file
Word vừa nhập thì hiện
thông báo mở không
được.
TH_SoanBaiLT
2 Nhấn button
Thêm Bài
Lý Thuyết.
Thêm bài
lý thuyết
mời.
(ThemBaiLyThuyet)
Hiện form Open lên cho
phép giáo viên chọn file
lý thuyết đã được soạn
trước.
Sau khi giáo viên chọn
file word cần thêm sẽ tiến
hành thêm vào thư mục
Data và cập nhật lại
ExplorerBar Sách LT.
TH_SoanBaiLT
79
80. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3 Chọn 1 bài
trong cây ở
phần
ExplorerBar
Sách LT.
Chọn 1 bài
lý thuyết.
Hiển thị bài lý thuyết
được chọn lên màn hình
Lý Thuyết.
Hiển thị các button Xóa
Bài Lý Thuyết, Kết
Xuất Ra Word, In.
TH_SoanBaiLT
4 Nhấn button
Xóa Bài Lý
Thuyết.
Xóa bài lý
thuyết
được chọn.
(XoaBaiLyThuyet)
Hiển thị form thông báo
để xác nhận lại thông tin
xem giáo viên có thực sự
muốn xóa bài lỳ thuyết
hay không.
Nếu có thì tiến hành xóa
bài lý thuyết được chọn
và cập nhật lại danh sách
các bài lý thuyết trên cây
ở ExplorerBar Sách LT.
TH_SoanBaiLT
5 Nhấn button
Kết Xuất
Ra Word.
Kết xuất
bài lý
thuyết
được chọn
ra Word.
(KetXuatWord)
Hiển thị form SaveAs để
giáo viên nhập tên file
Word sẽ lưu bài lý thuyết
được chọn sau đó tiến
hành kết xuất nội dung
bài lý thuyết ra Word..
TH_SoanBaiLT
6 Nhấn button
In.
In bài lý
thuyết.
(InBaiLT)
Kết xuất bài lý thuyết
đang được chọn ra Word
và cho phép in bài lý
thuyết đó khi có máy in.
TH_SoanBaiLT
80
81. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
7 Nhấn button
Gởi Thư.
Gởi bài lý
thuyết
được chọn
qua email.
(GoiThu)
Hiển thị nội dung bài lý
thuyết đang có trong màn
hình Lý Thuyết lên form
Gởi Thư và cho phép
giáo viên gởi nội dung lý
thuyết đó qua email.
TH_SoanBaiLT
Bảng 4.27. Các sự kiện màn hình soạn lý thuyết.
4.4.1.4. Màn hình soạn đề trắc nghiệm:
a. Nội dung :
Hình 4.13. Màn hình Soạn Đề Trắc Nghiệm.
81
82. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
b. Danh sách các biến cố và xử lý tương ứng trên màn hình:
STT Biến Cố Ý Nghĩa Xử Lý Tương Ứng Lớp Xử Lý
1 Chọn 1 câu
trên cây
trong
ExplorerBar
Ngân Hàng
Câu Hỏi
Chọn 1 câu
hỏi trong
ngân hàng
câu hỏi.
(TreeNHCH_
AfterSelect)
Hiển thị nội dung câu
hỏi trắc nghiệm được
chọn lên màn hình.
Hiển thị các button của
màn hình Trắc nghiệm.
TH_SoanDe
TracNghiem
2 Chọn 1 câu
trên cây
trong
ExplorerBar
Đề Trắc
Nghiệm.
Chọn 1 câu
hỏi trắc
nghiệm
được phát
sinh ra.
(TreeDeTN_
AfterSelect)
Hiển thị nội dung câu
hỏi trắc nghiệm được
chọn lên màn hình.
Hiển thị các button màn
hình Trắc Nghiệm.
TH_SoanDe
TracNghiem
3 Nhấn button
Tạo Đề
Trắc
Nghiệm.
Tạo đề trắc
nghiệm.
(TaoDeTracNghiem)
Giáo viên phải chọn
Dạng câu hỏi trong cây
Ngân Hàng Câu Hỏi
trước khi chọn button
Tạo Đề Trắc Nghiệm.
Nếu giáo viên chọn kiểu
Máy Tự Phát Sinh Đề
thì sẽ tiến hành tự phát
sinh đề theo số lượng
câu hỏi được chọn trong
combobox Số Câu Hỏi
TH_SoanDe
TracNghiem
82
83. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
và dạng bài tập được
chọn trong cây Ngân
Hàng Câu Hỏi.
Nếu giáo viên chọn kiểu
Phát Sinh Đề Từ Ngân
Hàng Câu Hỏi thì sẽ
tiến hành phát sinh đề từ
NganHangCauHoi
theo số lượng câu hỏi đã
được chọn trong
combobox Số Câu Hỏi
và dạng bài tập được
chọn trong cây Ngân
Hàng Câu Hỏi.
Tất cả các đề trắc
nghiệm được tạo sẽ
được hiển thị lên cây
trong ExplorerBar Đề
Trắc Nghiệm.
4 Nhấn button
Thêm Câu
Hỏi.
Thêm câu
hỏi trắc
nghiệm vào
Ngân hàng
câu hỏi.
(ThemCauHoi)
Tiến hành thêm câu hỏi
vừa được soạn vào cây
Ngân Hàng Câu Hỏi
theo dạng bài tập đã
chọn trong combobox
Dạng bài tập và thông
báo với giáo viên là đã
thêm câu hỏi được hay
chưa.
TH_SoanDe
TracNghiem
83
84. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
5 Nhấn button
Sửa Câu
Hỏi
Sửa nội
dung câu
hỏi được
chọn.
(CapNhatCauHoi)
Tiến hành cập nhật lại
nội dung câu hỏi đã
được chọn và thông báo
với giáo viên là đã cập
nhật nội dung câu hỏi
hay chưa.
TH_SoanDe
TracNghiem
6 Nhấn button
Xóa Câu
Hỏi.
Xóa câu
hỏi được
chọn.
(XoaCauHoi)
Hiển thị form Thông
báo để xác nhận lại
thông tin là giáo viên có
thật sự muốn xóa câu
hỏi được chọn hay
không.
Nếu có thì tiến hành xóa
câu hỏi được chọn.
TH_SoanDe
TracNghiem
7 Nhấn button
Thêm Vào
NHCH
Thêm đề
trắc
nghiệm vào
Ngân hàng
câu hỏi.
(ThemCauHoi)
Tiến hành phân loại và
thêm các đề trắc nghiệm
vừa được phát sinh
trong cây Đề Trắc
Nghiệm vào cây Ngân
Hàng Câu Hỏi theo các
dạng tương ứng và
thông báo với giáo viên
là đã thêm đề vào được
hay chưa.
TH_SoanDe
TracNghiem
84
85. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
8 Nhấn button
Lưu Đề
Trắc
Nghiệm
Lưu đề trắc
nghiệm
vừa tạo.
(LuuDeTracNghiem)
Hiển thị Form SaveAs
cho giáo viên nhập vào
tên file cần lưu sau đó
tiến hành lưu đề trắc
nghiệm nếu giáo viên
nhấn button Save.
TH_SoanDe
TracNghiem
9 Nhấn button
Mở Đề
Trắc
Nghiệm.
Mở một đề
trắc
nghiệm đã
có sẵn.
(MoDeTracNghiem)
Hiển thị form Open cho
phép giáo viên chọn file
chứa đề trắc nghiệm cần
mở, đề trắc nghiệm
được chọn sẽ được hiển
thị trong cây Đề Trắc
Nghiệm.
TH_SoanDe
TracNghiem
10 Nhấn button
Xóa Đề
Trắc
Nghiệm
Xóa các đề
trắc
nghiệm.
(XoaDeTracNghiem)
Hiển thị form thông báo
để xác nhận lại thông tin
là giáo viên có thật sự
muốn xóa các đề trắc
nghiệm trong cây Đề
Trắc Nghiệm hay
không.
Nếu có tiến hành xóa tất
cả các đề trắc nghiệm
trên cây Đề Trắc
Nghiệm.
TH_SoanDe
TracNghiem
85
86. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
11 Nhấn button
Kết Xuất
Ra Word.
Kết xuất
các đề trắc
nghiệm ra
Word.
(KetXuatWord)
Hiển thị form SaveAs
để giáo viên nhập vào
tên file dùng để lưu các
đề trắc nghiệm và tiến
hành kết xuất nội dung
của tất cả các đề trắc
nghiệm trong cây Đề
TN ra Word.
TH_SoanDe
TracNghiem
12 Nhấn button
In Đề Trắc
Nghiệm.
In các đề
trắc
nghiệm
trên cây Đề
TN.
(InDeTracNghiem)
Tiến hành kết xuất nội
dung của tất cả các đề
trắc nghiệm trên cây Đề
TN ra Word và cho
phép giáo viên in đề khi
có mày in.
TH_SoanDe
TracNghiem
13 Nhấn button
Gởi Thư.
Gởi đề trắc
nghiệm qua
email.
(GoiThu)
Tiến hành kết xuất nội
dung của tất cả các đề
trắc nghiệm có trong
cây Đề TN ra màn hình
của form Gởi Thư và
cho phép giáo viên gởi
thư qua email.
TH_SoanDe
TracNghiem
Bảng 4.28. Các sự kiện màn hình Soạn đề trắc nghiệm.
86
88. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
b. Danh sách các biến cố và xử lý tương ứng trên màn hình:
STT Biến Cố Ý Nghĩa Xử Lý Tương Ứng Lớp Xử Lý
1 Nhấn button
Mở Bài
Giải
Mở bài giải
của học
sinh.
(MoBaiGiai)
Mở bài giải của học sinh.
Nếu đã có bài giải thì hiển
thị nội dung bài giải ra
màn hình Bài Giải và
hiển thị button Lưu Bài
Giải, Kết Xuất Ra
Word, In.
TH_ChamBai
2 Nhấn button
Lưu Bài
Giải
Lưu bài
giải.
(LuuBaiGiai)
Hiển thị form SaveAs cho
phép giáo viên nhập vào
tên file sẽ lưu.
Sau khi lưu sẽ hiển thị
form Thông báo để thông
báo cho giáo viên biết là
bài giải đã được lưu hay
chưa.
TH_ChamBai
3 Nhấn button
Kết Xuất
Ra Word.
Kết xuất
bài giải
được chọn
ra Word.
(KetXuatWord)
Hiển thị form SaveAs để
giáo viên nhập tên file
Word sẽ lưu bài giải được
chọn sau đó tiến hành kết
xuất nội dung bài lý
thuyết ra Word..
TH_ChamBai
88
89. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4 Nhấn button
In.
In bài giải. (InBaiGiai)
Kết xuất bài giải đang
được chọn ra Word và
cho phép in bài giải đó
khi có máy in.
TH_ChamBai
5 Nhấn button
Gởi Thư.
Gởi bài
giải được
chọn qua
email.
(GoiThu)
Hiển thị nội dung bài giải
đang có trong màn hình
Bài Giải lên form Gởi
Thư và cho phép giáo
viên gởi nội dung bài giải
sau khi chấm qua email.
TH_ChamBai
6 Nhấn dấu = Lấy công
thức tương
ứng với
công thức
nhập trong
textbox
Công thức.
(TinhCongThuc)
Lấy và hiển thị các công
thức tương ứng với công
thức được nhập vào
textbox công thức trong
combobox bên phải dấu
=.
TH_CongThuc
Bảng 4.29. Các sự kiện màn hình Chấm bài.
89
91. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.4.2. Phân hệ học sinh:
4.4.2.1. Màn hình chính:
a. Nội dung :
Hình 4.16. Màn hình chính Phân hệ Học Sinh
b. Danh sách các biến cố và xử lý tương ứng trên màn hình:
STT Biến Cố Ý Nghĩa Xử Lý Tương Ứng Lớp Xử Lý
1 Chọn button
Hướng Dẫn
Sử Dụng
trong
ToolMenu
Trợ Giúp.
Xem phần
hướng dẫn
sử dụng
của phần
mềm.
(HuongDanSuDung)
Hiển thị phần hướng dẫn
sử dụng phần mềm.
MainFormHS
91
92. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
2 Chọn button
Giới thiệu
trong
ToolMenu
Trợ Giúp.
Xem phần
giới thiệu
về phần
mềm.
(GioiThieu)
Hiển thị form Giới thiệu
về phần mềm.
MainFormHS
3 Chọn thanh
ToolMenu
Bài Tập
Viết.
Chọn phần
Phương
Trình.
(XuLiChucNangNhom
BaiTapViet)
Các button trong
ToolMenu Bài Tập Viết
và màn hình Bài Tập
Viết sẽ được hiển thị.6
MainFormHS
4 Chọn thanh
ToolMenu
Trắc
Nghiệm.
Chọn phần
Trắc
Nghiệm.
(XuLiChucNangNhom
TracNghiem)
Các button trong
ToolMenu Trắc Nghiệm
và màn hình Trắc
Nghiệm sẽ được hiển thị.7
MainFormHS
5 Chọn thanh
ToolMenu
Lý Thuyết.
Chọn phần
Lý Thuyết.
(XuLiChucNangNhom
LyThuyet)
Các button trong
ToolMenu Lý Thuyết và
màn hình Lý Thuyết sẽ
được hiển thị.8
MainFormHS
6 Chọn
MenuItem
Hệ Thống
Thoát
Thoát khỏi
phần mềm.
(ThoatKhoiChuongTrinh)
Thoát khỏi chương trình.
MainFormHS
6
Xem mục 4.4.2.2 để rõ thêm.
7
Xem mục 4.4.2.4 để rõ thêm.
8
Xem mục 4.4.2.3 để rõ thêm.
92
93. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
7 Chọn
MenuItem
Trợ Giúp
Hướng Dẫn
Sử Dụng.
Xem phần
Hướng Dẫn
Sử Dụng.
(HuongDanSuDung)
Hiển thị phần hướng dẫn
sử dụng phần mềm.
MainFormHS
8 Chọn
MenuItem
Trợ Giúp
Giới Thiệu.
Xem phần
Giới Thiệu
về phần
mềm.
(GioiThieu)
Hiển thị form Giới thiệu
về phần mềm.
MainFormHS
Bảng 4.30. Các sự kiện màn hình chính Phân hệ Học sinh.
4.4.2.2. Màn hình giải bài tập viết:
a. Nội dung :
Hình 4.17. Màn hình giải Bài tập viết.
93
94. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
b. Danh sách các biến cố và xử lý tương ứng trên màn hình:
STT Biến Cố Ý Nghĩa Xử Lý Tương Ứng Lớp Xử Lý
1 Nhấn button
Sách Bài
Tập.
Lấy sách
bài tập.
(CapNhatSachBaiTap)
Lấy thông tin các bài tập
trên SachBaiTap.lg đưa
lên cây Sách Bài Tập.
Khi đã lấy được thông tin
các bài tập thì hiện thông
báo là thông tin đã được
cập nhật.
TH_BaiTapViet
2 Nhấn button
Mở đề bài.
Lấy đề bài
trong file.
(MoDeBai)
Hiển thị form Open ⇒
chọn tập tin có chứa đề
bài cần mở.
TH_BaiTapViet
3 Chọn dạng
bài tập trong
combobox
Dạng Bài
Tập
Chọn dạng
bài tập.
Chọn dạng bài tập. TH_BaiTapViet
4 Chọn 1 bài
tập trên cây
Sách Bài
Tập.
Chọn 1 bài
tập.
(TreeBT_AfterSelect)
Hiển thị thông tin của bài
tập được chọn lên màn
hình và cập nhật lại thông
tin trên combobox Dạng
bài tập theo dạng bài tập
được chọn..
Hiển thị button Lưu Bài
Giải, Kết Xuất Ra
TH_BaiTapViet
94
95. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
Word, In.
5 Nhấn button
Lưu Bài
Giải.
Lưu bài
giải.
(LuuBaiGiai)
Hiển thị form SaveAs để
học sinh nhập vào tên file
để lưu nội dung bài giải.
TH_BaiTapViet
6 Chọn tab
Bài Giải
Của Học
Sinh.
(TabBaiGiai_Click)
Hiển thị màn hình cho
phép học sinh làm bài tập
đưa ra.
TH_BaiTapViet
7 Chọn tab
Bài Hướng
Dẫn.
(TabBaiGiai_Click)
Hiển thị thông tin hướng
dẫn về bài tập được chọn
mà giáo viên đã soạn sẵn.
TH_BaiTapViet
8 Chọn tab
Bài Giải
Của Máy
Hoặc GV
(TabBaiGiai_Click)
Hiển thị bài giải của bài
tập được chọn.
Hiển thị button Máy Giải
TH_BaiTapViet
9 Nhấn button
Máy Giải ở
kiểu Giải
Từng Bước.
(MayGiai)
Hiển thị các bước giải
theo trình tự từng bước
một.
Hiển thị button Dừng
Giải.
Làm mờ button Máy
Giải.
TH_BaiTapViet
10 Nhấn button
Máy Giải ở
kiểu Giải
Nhanh
(MayGiai)
Hiển thị đồng loạt tất cả
các bước giải của bài
toán.
TH_BaiTapViet
95
96. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
11 Nhấn button
Dừng Giải.
Cho máy
dừng bước
giải.
(DungGiai)
Ngừng ngay bước giải
đang giải.
Hiển thị button Tiếp Tục
Giải.
Làm mờ button Dừng
Giải.
TH_BaiTapPT
12 Nhấn button
Tiếp Tục
Giải.
Cho máy
tiếp tục
giải.
(TiepTucGiai)
Tiếp tục thực hiện các
bước giải tiếp theo.
Hiển thị button Dừng
Giải.
Làm mờ button Tiếp Tục
Giải.
TH_BaiTapViet
13 Nhấn dấu = Lấy công
thức tương
ứng với
công thức
nhập trong
textbox
Công thức.
Lấy và hiển thị các công
thức tương ứng với công
thức được nhập vào
textbox công thức trong
combobox bên phải dấu
=.
TH_CongThuc
14 Nhấn button
Kết Xuất
Ra Word.
Kết xuất
bài giải ra
Word.
(KetXuatWord)
Hiển thị form SaveAs để
học sinh nhập tên file
Word sẽ lưu bài giải được
chọn sau đó tiến hành kết
xuất đề bài và nội dung
bài giải ra Word..
TH_BaiTapViet
96
97. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
15 Nhấn button
In.
In bài giải. (InDeBaii)
Kết xuất đề bài và bài giải
ra Word và cho phép học
sinh in bài giải đó khi có
máy in.
TH_BaiTapViet
16 Nhấn button
Gởi Thư.
Gởi bài
giải được
chọn qua
email.
(GoiThu)
Hiển thị nội dung bài giải
đang có trong màn hình
Bài Giải lên form Gởi
Thư và cho phép học sinh
gởi nội dung bài giải sau
khi giải qua email.
TH_BaiTapViet
Bảng 4.31. Các sự kiện màn hình giải bài tập viết.
97
98. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.4.2.3. Màn hình xem lý thuyết:
a. Nội dung :
Hình 4.18. Màn hình xem Lý thuyết.
b. Danh sách các biến cố và xử lý tương ứng trên màn hình:
STT Biến Cố Ý Nghĩa Xử Lý Tương Ứng Lớp Xử Lý
1 Nhấn button
Sách Lý
Thuyết.
Chọn Sách
Lý Thuyết.
(CapNhatSachLyThuyet
SachLyThuyet)
Lấy nội dung các bài lý
thuyết có trong
SachLyThuyet.lg đưa lên
cây Sách LT.
Sau khi cập nhật nội dung
TH_BaiLT
98
99. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
cây Sách LT xong thì
hiện thông báo là đã cập
nhật xong.
2 Chọn 1 bài
lý thuyết
trên cây
Sách LT.
Chọn xem
nội dung 1
bài lý
thuyết.
(XuLiChonBaiLT)
Hiển thị nội dung bài lý
thuyết được chọn lên màn
hình Lý Thuyết.
Hiển thị các button Kết
Xuất Ra Word, In.
TH_BaiLT
3 Nhấn button
Kết Xuất
Ra Word.
Kết xuất
bài lý
thuyết ra
Word.
(KetXuatWord)
Hiển thị form SaveAs để
học sinh nhập tên file
Word sẽ lưu bài lý thuyết
được chọn sau đó tiến
hành kết xuất nội dung
bài lý thuyết ra Word..
TH_BaiLTs
4 Nhấn button
In
In bài lý
thuyết.
(InDeBaii)
Kết xuất nội dung bài lý
thuyết ra Word và cho
phép học sinh in bài lý
thuyết đó khi có máy in.
TH_BaiLT
5 Nhấn button
Gởi Thư.
Gởi Thư. (GoiThu)
Hiển thị nội dung bài lý
thuyết đang có trong màn
hình Lý Thuyết lên form
Gởi Thư và cho phép học
sinh gởi nội dung bài lý
thuyết đó qua email.
TH_BaiLT
Bảng 4.32. Các sự kiện màn hình Xem lý thuyết.
99
101. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
b. Danh sách các biến cố và xử lý tương ứng trên màn hình:
STT Biến Cố Ý Nghĩa Xử Lý Tương Ứng Lớp Xử Lý
1 Nhấn button
Ngân Hàng
Câu Hỏi.
Lấy Ngân
Hàng Câu
Hỏi.
(CapNhatNHCH
NganHangCauHoi)
Cập nhật
NganHangCauHoi.lg
Sau khi cập nhật xong thì
hiển thị form Thông Báo đã
cập nhật xong.
Làm mờ button Ngân Hàng
Câu Hỏi.
TH_TracNghiem
2 Nhấn button
Tạo Đề
Trắc
Nghiệm.
Tạo đề trắc
nghiệm.
(TaoDeTracNghiem)
Phải chọn dạng câu hỏi
trong cây Dạng Câu Hỏi
trước khi nhấn button Tạo
Đề Trắc Nghiệm.
Tiến hành tạo đề trắc
nghiệm theo số câu hỏi
được chọn trong combobox
Số Câu Hỏi theo các kiểu
Máy Tự Phát Sinh Đề hay
Phát Sinh Đề Từ NHCH
và theo các dạng bài tập đã
được chọn trong cây Dạng
Câu Hỏi.
Sau khi phát sinh đề sẽ hiển
thị danh sách các đề trắc
nghiệm lên cây Đề Trắc
TH_TracNghiem
101
102. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
Nghiệm.
Hiển thị các button Xóa Đề
Trắc Nghiệm, Bắt Đầu,
Xem Bài Giải, Kết Xuất
Ra Word, In Đề Trắc
Nghiệm.
3 Nhấn button
Xóa Đề
Trắc
Nghiệm.
Xóa đề
trắc
nghiệm
đang có.
(XoaDeTracNghiem)
Hiển thị form Thông báo
để xác nhận lại thông tin là
học sinh có thật sự muốn
xóa đề trắc nghiệm đang có
hay không.
Nếu có thì tiến hành xóa đề
trắc nghiệm đang có và cập
nhật lại cây Đề TN.
Làm mờ các button Xóa Đề
Trắc Nghiệm, Kết Xuất
Ra Word, In Đề Trắc
Nghiệm.
Hiển thị button Ngân Hàng
Câu Hỏi.
TH_TracNghiem
4 Chọn mức
độ trong
combobox
Mức Độ.
Chọn mức
độ làm bài.
(cmbMucDo_TextChanged)
Hiển thị thông tin thời gian
lên làm bài lên textbox
Thời Gian tương ứng với
mức độ được chọn.
TH_TracNghiem
102
103. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
5 Chọn 1
dạng trong
danh sách
Dạng Câu
Hỏi.
Chọn 1
dạng câu
hỏi trắc
nghiệm.
(TreeTN_AfterSelect)
Chọn các dạng câu hỏi cần
tạo đề trắc nghiệm.
TH_TracNghiem
6 Nhấn button
Bắt Đầu.
Bắt đầu
làm bài.
(BatDauLamBai)
Bắt đầu nhảy thời gian làm
bài trong textbox Thời
Gian.
Số câu học sinh đã làm sẽ
được cập nhật trong textbox
bên dưới và hiện màu vàng
trên cây Đề TN.
Làm mờ button Bắt Đầu.
Hiển thị button Kết Thúc.
Sau khi hết thời gian làm
bài sẽ hiển thị form Thông
báo đã hết thời gian làm bài
và tiến hành xóa tất cả các
câu hỏi trắc nghiệm đang có
trong Đề TN, đồng thời thể
hiện số câu trả lời đúng và
số điểm trong các textbox
Số Câu Đúng và Điểm Số.
Làm mờ các button Xóa Đề
Trắc Nghiệm, Kết Thúc.
Hiển thị button Ngân Hàng
Câu Hỏi.
TH_TracNghiem
103
104. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
7 Nhấn button
Kết Thúc.
Kết thúc
làm bài.
(KetThucLamBaiTN)
Hiển thị form Thông báo
để xác nhận thông tin là học
sinh có thật sự muốn kết
thúc bài làm hay không.
Nếu có thì tiến hành xóa tất
cả các câu hỏi trắc nghiệm
đang có trong Đề TN, đồng
thời thể hiện số câu trả lời
đúng và số điểm trong các
textbox Số Câu Đúng và
Điểm Số.
Làm mờ các button Xóa Đề
Trắc Nghiệm, Kết Thúc.
Hiển thị button Ngân Hàng
Câu Hỏi.
TH_TracNghiem
8 Nhấn button
Xem Bài
Giải
Xem lại
bài giải
vừa giải.
(XemBaiGiai)
Hiển thị form SaveAs để
học sinh ghi tên file sẽ lưu
đề trắc nghiệm vừa làm.
Sau khi nhấn button Save sẽ
hiển thị màn hình Word
chứa thông tin đề trắc
nghiệm vừa làm.
TH_TracNghiem
9 Nhấn button
Kết Xuất
Ra Word.
Kết xuất
bài tập trắc
nghiệm ra
Word.
(KetXuatWord)
Hiển thị form SaveAs để
học sinh nhập tên file Word
sẽ lưu các bài tập trắc
nghiệm sau đó tiến hành kết
TH_TracNghiem
104
105. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
xuất nội dung bài lý thuyết
ra Word..
10 Nhấn button
In
In các bài
tập trắc
nghiệm.
(InDeTracNgiem)
Kết xuất nội dung các bài
tập trắc nghiệm ra Word và
cho phép học sinh in các bài
tập trắc nghiệm đó khi có
máy in.
TH_TracNghiem
11 Nhấn button
Gởi Thư.
Gởi Thư. (GoiThu)
Hiển thị nội dung các bài
tập trắc nghiệm đang có
trong cây Đề TN lên form
Gởi Thư và cho phép học
sinh gởi nội dung các bài
tập trắc nghiệm đó qua
email.
TH_TracNghiem
Bảng 4.33. Các sự kiện màn hình giải Bài tập Trắc nghiệm.
105
107. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.4.3. Các màn hình chung của hai phân hệ :
4.4.3.1. Màn hình giới thiệu:
a. Nội dung :
Hình 4.21. Màn hình Giới thiệu.
b. Danh sách các biến cố và xử lý tương ứng trên màn hình:
STT Biến Cố Ý Nghĩa Xử Lý Tương Ứng Lớp Xử Lý
1 Nhấn một
phím bất
kỳ.
Nhấn một
phím bất
kỳ.
(FormGioiThieu_KeyDown)
Đóng màn hình giới thiệu.
FormGioiThieu
2 Click chuột
lên form.
Click
chuột lên
form.
(FormGioiThieu_Click)
Đóng màn hình giới thiệu.
FormGioiThieu
Bảng 4.34. Các sự kiện màn hình Giới thiệu.
107
108. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
4.4.3.2. Màn hình gởi thư:
a. Nội dung :
Hình 4.22. Màn hình Gởi Thư.
b. Danh sách các biến cố và xử lý tương ứng trên màn hình:
STT Biến Cố Ý Nghĩa Xử Lý Tương Ứng Lớp Xử Lý
1 Nhấn button
AttachFile
Gởi kèm
file.
(cmdAttached_Click)
Gởi thư kèm theo file đã
chọn.
FormGoiMail
2 Nhấn radio
Dạng text
Chọn kiểu
gởi thư
dạng text.
108
109. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3 Nhấn radio
Dạng html
Chọn kiểu
gởi thư
html.
4 Nhấn button
Gởi.
gởi thư. (cmdGoiThu_Click)
Gởi thư theo dạng đã chọn.
FormGoiMail
5 Nhấn button
Bỏ qua.
Không gởi
thư.
(cmdTroVe_Click)
Đóng màn hình gởi thư.
FormGoiMail
Bảng 4.35. Các sự kiện màn hình Gởi thư.
109
110. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
PHẦN 5: THỰC HIỆN PHẦN MỀM VÀ KIỂM TRA
5.1. THỰC HIỆN PHẦN MỀM :
Môi trường thực hiện: Visual Basic.Net
Tổ chức vật lý của ứng dụng:
Hình 5.1. Tổ chức vật lý.
Ứng dụng gồm 7 projects: ControlCongThuc, FormHoTro, PhanHeGV,
PhanHeHS, XuLi_LuongGiac, SetupPhanHeGV, SetupPhanHeHS
o Project ControlCongThuc: chứa namespace ControlCongThuc.
Namespace ControlCongThuc: chứa lớp TH_CongThuc
Hình 5.2. Project ControlCongThuc
o Project FormHoTro: chứa namespace FormHoTro
110
111. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
Namspace FormHoTro chứa các lớp giao diện :
FormGioiThieu, FormGoiMail, FormProgressBar,
FormThongBao, FormXacNhanThongTin
Hình 5.3. Project FormThongBao
o Project PhanHeGV: chứa namespace LuongGiac
Namspace LuongGiac chứa các lớp: MainFormGV,
TH_ChamBai, TH_SoanBaiLT, TH_SoanBaiTapViet,
TH_SoanDeTracNghiem
Hình 5.4. Project PhanHeGV
111
112. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
o Project PhanHeHS: chứa namspce LuongGiac
Namspace LuongGiac chứa các lớp: FlatButton, MainFormHS,
TH_BaiLT, TH_BaiTapViet, TH_TracNghiem
Hình 5.5. Project PhanHeHS
o Project XuLi_LuongGiac: chứa namespace XuLi_LuongGiac
Namspace XuLi_LuongGiac chứa các lớp xử lí: BaiGiai,
BienDoiChuoi, BieuThuc, CauTruc, CoSoDuLieu,
DoiCongThuc, IconsMenu, KiemTra, LayCongThuc, PhanSo,
PhatSinhDeTracNghiem, PhuongTrinh, PTBacI, PTBacII,
PTBacISinCos, PTBacIISinCos, PTDoiXungSinCos,
PTCoBan, XuLiTinhToan, XuLiDau
112
115. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
o Project SetupPhanHeHS: chứa các thông tin để tạo tập tin cài đặt
chương trình
Hình 5.8. ProjectSetupPhanHeHS
5.2. KIỂM TRA :
Chức năng “Giải bài tập phương trình” (Máy tự giải)
o Dạng 1: Phương trình bậc I
Không biện luận:
• Đề bài:
sin(x+20’) = sin60’
• Bài giải:
STT Bước giải
1 TXD: Với mọi x thuộc R
2 Từ phương trình ta có:
3 sin(x+20’) = sin60’
4 x+20’ = 60’ + k360’ hay x+20’ = 120’ + k360’ (k thuộc Z)
5 x = 40’ + k360’ hay x = 100’ + k360’ (k thuộc Z)
115
116. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
Biện luận:
• Đề bài:
cos(x+1) = m
• Bài giải:
STT Bước giải
1 TXD: Với mọi x thuộc R
2 Từ phương trình ta có:
3 cos(x+1) = m
4 Biện luận:
5 Phương trình có nghiệm khi:
6 |m| <= 1
7 -1 <= m <= 1
8 Đặt m = cosa
9 cos(x+1)=cosa
10 x+1=a + k2pi hay x+1=-a + k2pi (k thuộc Z)
11 x=-1 + a + k2pi hay x=-1 – a + k2pi (k thuộc Z)
12 Phương trình vô nghiệm
13 m > 1 hay m < -1
o Dạng 2: Phương trình bậc II
Không biện luận:
• Đề bài:
2((cosx)^2)+sqrt(2)cosx-2=0
• Bài giải:
STT Bước giải
1 Đặt t = cosx (-1 <= t <= 1)
2 2(t^2) + sqrt(2)t – 2 = 0 (D = 18 >= 0)
116
117. K
H
O
A
C
N
TT
–
Đ
H
K
H
TN
3 t = sqrt(2)/2 (nhận)
4 Hay t = -sqrt(2) (loại)
5 Trường hợp t = sqrt(2)/2
6 cosx = sqrt(2)/2
7 cosx = cos(pi/4)
8 x = pi/4 + k2pi hay x = -pi/4 + k2pi
Biện luận:
• Đề bài:
3((sinx)^2)+msinx=2
• Bài giải:
STT Bước giải
1 3((sinx)^2)+msinx-2=0
2 Đặt t = sinx (-1 <= t <= 1)
3 3(t^2) + mt – 2 = 0 (D = (m^2) + 24)
4 Biện luận:
5 Trường hợp: (m^2) + 24 = 0
6 m = VN
7 t = -m/6
8 sinx = -m/6
9 Phương trình có nghiệm khi:
10 |-m/6| <= 1
11 -1 <= -m/6 <= 1
12 -6 <= m <= 6
13 Đặt –m/6 = sina
14 sinx = sina
15 x = a + k2pi hay x = pi – a + k2pi (k thuộc Z)
16 Phương trình vô nghiệm khi:
117