Xem mẫu

  1. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy 4.1.2. Phần bài tập giải tích: Chương trình sẽ hỗ trợ Người Dùng thực hiện việc các thao tác trên 1 Bài Tập Giải Tích như là : Soạn Bài, Làm Bài Tập về nhà, hoặc chấm Bài Tập. TN MHChinh Đối Tượng Giao Tiếp (f rom ManH inh) Người Dùng H K MHDSBaiTap Đối Tượng Màn HÌnh (f rom ManH inh) Giao Diện H Đ MHSoanBai MHXemLoiGiai MHChamBai (f rom ManH inh) (f rom ManH inh) (f ro m Ma nHi nh ) – TT BaiGiai DSB aiGiai Đối Tượng (f rom BaiGiai) (f rom BaiGiai) N Xử Lý C Đối Tượng Truy dbBaiGiai A Xuất Dữ Liệu (f rom BaiGiai) O H Hình 2.4.3-9 Hệ thống lớp đối tượng phần bài tập K 38
  2. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy 4.1.3. Phần bài tập trắc nghiệm : Đối Tượng Giao Tiếp MHChinh (f rom ManH inh) Người Dùng Đối Tượng Màn HÌnh Giao Diện TN MHDSBaiTN (f rom ManH inh) H K MHSoanCauTN MHPhat SinhDeTN MHSoanDeTN MHGiaiDeTN (f rom ManH inh) (f rom ManH inh) (f ro m M anHi nh) (f ro m M anHi nh) H Đ Đối Tượng DSTracNghiem Trac Nghiem Xử Lý (f rom Trac Nghiem ) (f rom Trac Nghiem ) – TT Đối Tượng Truy dbTrac Nghiem (f rom Trac Nghiem ) Xuất Dữ Liệu N C Hình 2.4.3-10 Hệ thống lớp đối tượng phần trắc nghiệm A O H K 39
  3. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy 4.1.4. Phần hỗ trợ giải toán: Mô hình này được lập dựa trên nguyên tắc sau : • Người Dùng nhập các lới Gợi Ý vào. • Các Lời Gợi Ý này là các phát biểu về các Định Lý hoặc Công Thức được sử dụng. • Các Định Lý hoặc Công Thức này lại ba gồm các thành phần Hình Học và các TN Phương Trình toán học. H PhanTu (f rom F undam ent ) K H Đ TP HinhHoc TP PhuongTri nh (f rom F undam ent ) (f ro m Fu n d am e n t) – TT TP QuanHe C ongThucQuanHe BaiGiai (f rom F undam ent ) (f ro m Co n g T h uc Nh a p ) (f rom BaiGiai LG) N C Hình 2.4.3-11 Hệ thống lớp đối tượng phần hỗ trợ giải toán A O H K 40
  4. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy Danh sách Lớp khai báo kế thừa từ Lớp TPHinhHoc : Lớp TPHinhHoc là thể hiện cho các thành phần Hình Học có trong 1 Bài Toán, do đó nó gồm các thành phần như: Giá Trị, Điểm, Đường Thẳng, Đường Tròn, Ellipse, …… GiaTri Diem DuongThang Goc Vector (f rom F undam ent ) (f rom Geom et ric ) (f rom Geom et ric ) TN (f rom Geom et ric ) (f rom Geom et ric ) H K TamGiac TPHinhHoc TuGiac (f rom Geom et ric ) (f rom F undam ent ) (f rom Geom et ric ) H Đ Parabol Elli pse Hyperbol D uongTron – (f rom Geom et ric ) (f rom Geom et ric ) (f rom Geom et ric ) (f rom Geom et ric ) TT Hình 2.4.3-12 Danh sách Lớp khai báo kế thừa từ Lớp TPHinhHoc Danh sách Lớp khai báo kế thừa từ Lớp TPQuanHe : N Lớp THQuanHe là thể hiện cho các phát biểu về Định Lý hoặc Công Thức được sử C dụng để giải 1 Bài Toán, chẳng hạn như : các Định Lý về Đường Thẳng, Đường Tròn, điều kiện tương giao, tiếp xúc của các thành phần Hình Học , …… hoặc các Công A Thức được sử dụng như: Giải Hệ Phương Trình, các phép Biến Đổi Phương Trình. O Trong chương trình có sử dụng tất cà là 62 Định Lý khác nhau và 13 Công Thức hỗ H trợ tính toán, sơ đồ dưới đây chỉ cung cấp 1 số lớp cơ bản, đặc trưng. K 41
  5. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy D uongThangTiepTuyenDuongTron (f ro m Re l at i onshi p ) D uongThangSSD uongThang D iemThuocD uongTron D iemThuocD uong KhoangCach2Di em (f ro m Re l at i onshi p ) (f ro m Re l at i o n sh i p ) (f ro m Re l at i o n sh i p ) (f ro m Re l at i onshi p ) TN TPQuanHe H (f rom F undam ent ) K H XuatKetQua PhepBi enDoiPT GiaiHePT (f rom R elat ionship) (f rom R elat ions hip) (f ro m Re l at i onshi p ) Đ Hình 2.4.3-13 Danh sách Lớp khai báo kế thừa từ Lớp TPQuanHe – Chương 1 : Vector & Tọa Độ TT STT Tên Lớp Tên Định Lý / Công Thức tương ứng 1 VectorCua2Diem Tạo Vector từ 2 Điểm N 2 VectorVGVector 2 Vector vuông góc với nhau C 3 VectorSSVector 2 Vector song song với nhau 4 KhoangCach2Diem Khoảng cách giữa 2 Điểm A 5 TichVoHuong2Vector Tích vô hướng của 2 Vector O 6 ToaDoTrungDiem 1 Điểm là trung điểm của 2 Điểm còn lại H 7 ToaDoTrongTamTG Điểm là trọng tâm trong Tam Giác 8 GocGiua2Vector Giá Trị Góc giữa 2 Vector K 9 DiemCachDeu2Diem Điểm cách đều 2 Điểm Chương 2 : Phương Trình Đường Thẳng 42
  6. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy 10 DiemThuocDuong Điểm có thuộc Đường Thẳng. 11 DuongSSDuong 2 Đường Thẳng song song với nhau 12 DuongVGDuong 2 Đường Thẳng vuông góc với nhau 13 VectorSSDuong Vector song song với Đường Thẳng 14 KhoangCachDiemDuongThang Giá Trị khoảng cách từ Điểm đến Đường TN Thẳng 15 HeSoGocDuongThang Giá Trị hệ số góc giữa 2 Đường Thẳng H 16 DiemCachDeu2DuongThang Điểm cách đều 2 Đường Thẳng K 17 DuongCachDeu2Diem Đường Thẳng cách đều 2 Điểm 18 DiemCachDeuDiemDuong Điểm cách đều Điểm và Đường Thẳng H Chương 3 : Vị trí Tương Đối Của Đường Thẳng Đ Chương 4 : Góc & Khoảng Cách Giữa 2 Đường Thẳng – 19 GocGiua2DuongThang Giá Trị Góc giữa 2 Đường Thẳng TT 20 GocVectorDuongThang Giá Trị Góc giữa Vector và Đường Thẳng 21 DuongPhanGiacTrong Đường Thẳng là đường phân giác góc nhọn của 2 Đường Thẳng N 22 DuongPhanGiacNgoai Đường Thẳng là đường phân giác góc tù của 2 C Đường Thẳng A Chương 5 : Đường Tròn O 23 DiemThuocDuongTron Điểm thuộc Đường Tròn H 24 BanKinhDuongTron Giá Trị K là bán kính Đường Tròn 25 TamDuongTron Điểm là tâm Đường Tròn K 26 TiepTuyenDuongTron Đường Thẳng là tiếp tuyến với Đường Tròn 43
  7. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy Chương 6 : Ellipse 28 TamSaiEllipse Giá Trị tâm sai của Ellipse 29 TieuCuEllipse Giá Trị tiêu cự của Ellipse 30 TrucLonEllipse Giá Trị độ dài trục lớn của Ellipse 31 TrucNhoEllipse Giá Trị độ dài trục nhỏ của Ellipse TN 32 TamEllipse Điểm là tâm của Ellipse 33 DiemThuocEllipse Điểm thuộc Ellipse H 34 DieuKienTiepXucEllipse Điều kiện để Đường Thẳng tiếp xúc với K Ellipse 35 TiepTuyenEllipse Đường Thẳng là tiếp tuyến với Ellipse H 36 EllipseTrenTrucHoanh Xác định Ellipse nằm tên trục hoành 37 EllipseTrenTrucTung Xác định Ellipse nằm tên trục tung Đ 38 BanKinhQuaTieuDiemEllipse Giá Trị bán kính qua tiêu điểm của Ellipse – 39 KhoangCach2DuongChuanEllipse Giá Trị khoảng cách giữa 2 đường chuẩn TT của Ellipse 40 BanKinhQuaTieuDiemTraiEllipse Giá Trị bán kính qua tiêu điểm trái của Ellipse N 41 BanKinhQuaTieuDiemPhaiEllipse Giá Trị bán kính qua tiêu điểm phải của C Ellipse A O H K 44
  8. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy Chương 7: Hyperbol 42 TamSaiHyperbol Giá Trị tâm sai của Hyperbol 43 TieuCuHyperbol Giá Trị tiêu cự của Hyperbol 44 TrucThucHyperbol Giá Trị độ dài trục thực của Hyperbol 45 TrucAoHyperbol Giá Trị độ dài trục ảo của Hyperbol TN 46 TamHyperbol Điểm là tâm của Hyperbol 47 DiemThuocHyperbol Điểm thuộc Hyperbol H 48 DieuKienTiepXucHyperbol Điều kiện để Đường Thẳng tiếp xúc với K Hyperbol 49 TiepTuyenHyperbol Đường Thẳng là tiếp tuyến với Hyperbol H 50 HyperbolTrenTrucHoanh Xác định Hyperbol nằm tên trục hoành 51 HyperbolTrenTrucTung Xác định Hyperbol nằm tên trục tung Đ 52 BanKinhQuaTieuDiemHyperbol Giá Trị bán kính qua tiêu điểm của – Hyperbol TT 53 KhoangCach2DuongChuanHyperbol Giá Trị khoảng cách giữa 2 đường chuẩn của Hyperbol 54 BanKinhQuaTieuDiemTraiHyperbol Giá Trị bán kính qua tiêu điểm trái của N Hyperbol C 55 BanKinhQuaTieuDiemPhaiHyperbol Giá Trị bán kính qua tiêu điểm phải của Hyperbol A O Chương 8 : Parabol H 56 SoTieuParabol Giá Trị số tiêu của Parabol 57 TamParabol Điểm là tâm của Parabol K 58 DiemThuocParabol Điểm thuộc Parabol 59 DieuKienTiepXucParabol Điều kiện để Đường Thẳng tiếp xúc với 45
  9. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy Parabol 60 TiepTuyenParabol Đường Thẳng là tiếp tuyến với Parabol 61 ParabolTrenTrucHoanh Xác định Parabol nằm tên trục hoành 62 ParabolTrenTrucTung Xác định Parabol nằm tên trục tung 63 BanKinhQuaTieuDiemParabol Giá Trị bán kính qua tiêu điểm của Parabol TN Chương 9 : Toán Tổng Hợp H 64 XuatKetQua Xuất ra kết quả thu được của 1 thành phần Hình Học K 65 DatGiaTriChoTP Đặt giá trị cho 1 thành phần Hình Học 66 GiaiHePT Giải hệ phương trình H 67 DonGianHePT Đơn giảnvà rút gọn hệ phương trình 68 ThayTheHePT Thay thế hệ phương trình vào 1 phương trình khác Đ 69 XetNghiemThuI Xét nghiệm thứ I của 1 thành phần Hình học – 70 LayNghiemThuI Chỉ lấy duy nhất nghiệm I cho 1 thành phần Hình Học TT 71 TaoMoiDoiTuong Tạo mới thành phần Hình Học từ 1 thành phần Hình Học có sẵn 72 ChungMinhQH Chứng minh 1 công thức hoặc định lý là đúng hay sai N 73 CongThucTinhGT Thực hiện phép tính giá trị. VD : a=1-2 C 74 CongThucBienDoiPT Thực hiện các phép tính trên các phương trình. VD: (1)- (2) A 75 XacDinhGiaThiet Xác định giả thiết của bài tập O 76 XacDinhKetLuan Xác định kết luận của bài tập H K Danh sách Lớp khai báo kế thừa từ Lớp TPPhuongTrinh : Lớp TPPhuongTrinh là thể hiện cho các dạng Phương Trình đặc trưng được dùng trong chương trình chẳng hạn như : phương trình bậc 1, bậc 2, phương trình Parabol, Hyperbol, 46
  10. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy Đường Tròn. Các phương trình này sẽ hỗ trợ cho Người Dùng thực hiện các phép tính toán, xác định xem có đủ khả năng khải không, nếu được thì cung cấp Lời Giải. Có tất cả là 23 dạng Phương Trình khác nhau giúp thể hiện các dạng khác nhau của Phương Trìnhh. nhưng tất cả đều có thể quy về dạng chuẩn là PT_Bac1nAn hoặc PT_Bac2nAn. TN PTGan PTBac 2_1An (f rom Equat i on) (f rom Equat ion) H K H PTBac 1_nAn PTBac 2_nAn (f rom Equat i on) (f rom Equat i on) Đ – TPPhuongTrinh TT (f rom F undam ent ) N C PTParabol PTTiepTuyen PTPhanGiac PTEllipse PTCachD eu PTDuongTron (f rom Equat ion) (f rom Equat i on) (f ro m E q u a ti o n ) (f ro m E q uati on) (f ro m E q u a ti o n ) (f ro m E q u a ti o n ) A O Hình 2.4.3-14 Danh sách Lớp khai báo kế thừa từ Lớp TPPhuongTrinh H K 47
  11. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy 4.2. Tổ chức lưu trữ và truy xuất các đối tượng : 4.2.1. Sơ đồ logic dữ liệu (hoặc tổ chức tập tin) : Các thông tin cần lưu trữ là thông tin về danh sách Lý thuyết, Bài tập, Mẫu câu hỏi trắc nghiệm, Câu hỏi trắc nghiệm, Đề trắc nghiệm được lưu trữ và các kiểu nhập liệu Công Thức được định nghĩa. Mỗi loại có cấu trúc như sau : TN H K H Đ – TT N C A Hình 2.4.3-15 Sơ đồ logic dữ liệu O 4.2.2. Danh sách các bảng dữ liệu : H Bảng Dữ Liệu DB_BAITAP K Bảng Dữ Liệu DB_CONGTHUC Bảng Dữ Liệu DB_MAUCAUTN Bảng Dữ Liệu DB_CAUHOITN 48
  12. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy 4.2.3. Danh sách các thuộc tính của từng bảng : Bảng Dữ Liệu DB_CONGTHUC : Dùng để lưu trữ các kiểu nhập liệu (được dùng trong các Lời Gợi Ý), các thông tin này được lưu trong file “dbCongThuc.txt” và được lưu tuần tự như sau : _ dsTPHinhHoc : danh sách các Thành Phần Hình Học được sử dụng trong Công TN Thức, Định Lý, chỉ mang ý nghĩa tham khảo cho việc nhập liệu, không thay đổi được. H _ CongThuc : là kiểu công thức nhập liệu cho 1 Cong Thức, Định Nghĩa. Bảng Dữ Liệu DB_BAITAP : K Dùng để lưu trữ các thông tin về Bài Tập, các thông tin này được lưu trong file H “dbBaiGia.txt” và được lưu tuần tự như sau : _ STT : số thứ tự của Bài Tập này trong danh sách các Bài Tập có trong chương Đ trình. – _ TenBai : tên của Bài Tập, thể hiện bài tập này thuộc dạng đặc trưng nào. _ Chuong : xác định xem Bài Tập thuộc chương nào (danh sách các loại Chương này TT căn cứ theo tiêu chuẩn của Sách Giáo Khoa). _ DoKho : xác định xem mức độ khó của Bài Tập gổm : Dễ, Trunh Bình và Khó. N _ DeBai : nội dung đề bài của Bài Tập dưới dạng văn bản. C _ DapAn : các Lời Gợi Ý được cung cấp dưới dạng văn bản. _ HuongDan : các lời hướng dẫn, gợi ý các cách giải Bài Tập.. A _ BaiLam : nội dung Bài Làm của Học Sinh. O _ NhanXet : lời nhận xét của Giáo Viên về Bài Làm của Học Sinh.. Bảng Dữ Liệu DB_CAUHOITN H Lưu trữ thông tin về câu hỏi trắc nghiệm, được lưu trong tập tin K NganHangCauHoi.txt với cấu trúc như sau : _STTCau : số thứ tự của câu trong ngân hàng câu hỏi. _Chuong : cho biết câu hỏi này thuộc chương nào. 49
  13. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy _De : khi câu hỏi được chọn vào một đề trắc nghiệm thì _De sẽ nhận giá trị của thứ tự đề. _NoiDung : lưu trữ phần nội dung của câu hỏi. _GoiY : lưu trữ các gợi ý (A, B, C, D) của câu hỏi. _DapAn : lưu trữ đáp án đúng của câu hỏi. TN Bảng Dữ Liệu DB_MAUCAUTN Lưu trữ các dạng mẫu câu hỏi dùng để phát sinh câu hỏi trắc nghiệm, được lưu trong H tập tin dbMauCau.txt, và có cấu trúc như sau : _STT : số thứ tự của mẫu. K _TenBai : mô phỏng ngắn gọn về mẫu. H _KieuBai : cho biết dạng của mẫu. _DoKho : cho biết mức độ phức tạp của bài toán. Đ _DeBai : lưu trữ toàn bộ câu hỏi bao gồm nội dung và các gợi ý. – _DapAn : lưu trữ đáp án đúng của câu hỏi. 4.2.4. Danh sách các đối tượng truy xuất dữ liệu : TT Lớp dbBaiGiai : thể hiện 1 cơ sở Dữ Liệu của Bài Tập. dbBaiGiai _Load() : thực hiện việc đọc 1 Bài Tập từ file. (f rom BaiGiai LG) N _Save() : thực hiện việc ghi 1 Bài Tập ra file. Load() Save() C _ LoadChiTiet() : thực hiện việc đọc các chi tiết của Bài Tập từ file LoadChiTiet() SaveChiTiet() Cơ Sở Dữ Liệu. A _ SaveChiTiet() : thực hiện việc ghi các chi tiết của Bài Tập ra file Cơ Sở Dữ Liệu. O Lớp dbCongThuc : thể hiện 1 cơ sở Dữ Liệu của Công Thức Nhập. _ Load() : thực hiện việc đọc 1 Công Thức Nhập từ file. H dbCongThuc _ Save() : thực hiện việc ghi 1 Công Thức Nhập ra file. (f rom C ong Thuc N hap) K _ PhanTichCau() : phân tích các dữ liệu thô (các Công Thức Load() Save() Nhập dưới dạn Text) thành kiểu đặc biệt áp dụng cho việc Phân PhanTic hCau() Tích Bài Giải. 50
  14. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy Lớp dbCauHoiTN : thể hiện 1 cơ sở dữ liệu của Câu hỏi trắc nghiệm. _Load() : đọc một câu hỏi trắc nghiệm từ tập tin. dbCauHoiTN (f rom Logic al View) _Save() : lưu một câu hỏi trắc nghiệm vào tập tin. 4.3. Thiết kế các lớp đối tượng xử lý chính : Load() Save() 4.3.1. Lớp BaiGiai : TN Lớp BaiGiai : thể hiện cho 1 Bài Tập trong chương trình. 4.3.1.1. Danh sách biến thành phần : H BaiGiai _ STT : số thứ tự của Bài Tập được đánh số trong Cơ Sở (f ro m B ai G i a i L G) Dữ Liệu. STT : Integer K Ten : String _ Ten : tên của Bài Tập. DeBai : String DapAn : Stri ng H _ DeBai : nội dung của đề bài. arrTPDeBai : TPHinhHoc* arrTPPhu : TPHi nhHoc* _ DapAn : nội dung của Đáp Án, chỉ ở dưới dạng text. Đ Load() _ arrTPDeBai : danh sách các thành phần Hình Học Save() TienXuLyCau() – được tạo ra khi ta “Phân Tích” nội dung của Đề Bài. Tom TatCau() PhanTichDeBai() _ arrTPPhu : danh sách các thành phần Hình Học được PhanTichCauDeBai () TT Gi aiBaiTap() phát sinh trong quá trình thực hiện việc “Giải Bài Tập”. PhanTichCauLoiGiai() LayDSThanhPhan() 4.3.1.2. Danh sách các Hàm thành phần : N _ Load() : đọc nội dung của 1 Bài Tập. C _ Save() : lưu lại nội dung của 1 Bài Tập. _ TienXuLyCau : loại bỏ các ký thừa trong 1 đoạn văn bản, đồng thời tách thành A từng câu riêng biệt. O _ TomTatCau() : phân tích 1 câu nhập liệu thành 1 dạng xác định để so sánh với danh sách Công Thức nhập liệu xem coi có hợp lệ không. H VD : ta nhập câu : “Cho điểm A(0,0) thuộc đường thẳng D:Ax+By+C=0”, khi được K đưa vào hàm TomTatCau() thì trở thành “ thuộc ” đồng thời tạo ra 2 đối tượng {A ∈ Diem và D ∈ DuongThang}. 51
  15. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy _PhanTichDeBai() : phân tích toàn bộ Đề Bài xem giả thuyết của Bài Tập cung cấp cho ta những gì, tất cả thành phần tạo ra ở đây được lưu trong mảng arrTPDeBai. _ PhanTichCauDeBai() : phân tích 1 câu xác định, được dùng trong hàm PhanTichDeBai() ở trên. _ GiaiBaiTap() : phân tích toàn bộ Lời Giải ⇒ thực hiện tuần tự từng bước đễ ra kết TN quả cuối cùng , tất cả thành phần tạo ra ở đây được lưu trong mảng arrTPPhuDeBai. _ PhanTichCauLoiGiai() : phân tích 1 câu Đáp Án xác định, được dùng trong hàm H GiaiBaiTap() ở trên. _ LayDSThanhPhan() : danh sách các Kết Quả cuối cùng thu được, bao gồm cả Giả K Thuyết và các Thành Phần trung gian. H 4.3.1.3. Sơ đồ phối hợp hoạt động : _ Ham GiaiBaiTap() : Đ BaiGiai BaiGiai – PhanTichCauDeBai() PhanTichDeBai() BaiGiai TT GiaiBaiTap() BaiGiai BaiGiai PhanTichDapAn() PhanTichCauDapAn() N _ Hàm PhanTichCauDapAn() : C BaiGiai BaiGiai BaiGiai PhanTichDapAn() TomTatCau() TienXuLyCau() A _ Hàm TienXuLyCau() : O TPQuanHe BaiGiai TPHinhHoc H LayKieuNhapLieu() TienXuLyCau() LayKieuNhapLieu() K 4.3.2. Lớp dbBaiGiai : Lớp DSBaiGiai : thể hiện toàn bộ các Bài Tập có trong chương trình, thực hiện các yêu cầu quản lý, truy xuất, tìm kiếm. 52
  16. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy 4.3.2.1. Danh sách biến thành phần : DS BaiGiai _ SoLuong : xác định số lượng các Bài Tập có trong chương (f ro m B a i G ia i L G) SoLuong : Integer trình. LoadSoLuong() 4.3.2.2. Danh sách hàm thành phần : Them BaiGiai () LuuBai Gi ai() _ LoadSoLuong() : ghi nhận lại số lượng các Bài Tập có XoaBai Gi ai() TN LayDSBa iGi ai() trong chương trình. Tim TheoSTT() Tim TheoTen() _ ThemBaiGiai() : thêm 1 Bài Tập mới vào trong Cơ Sở Dữ Tim TheoC huong() Tim TheoD oKho() H Liệu và đưa vào cuối dữ liệu. _ LuuBaiGiai() : cập nhật lại thông tin của Bài Tập. K _ XoaBaiGiai() : xóa Bài Tập này khỏi danh sách. H _ LayDSBaiGiai() : lấy toàn bộ tất cả các Bài Tập có trong chương trình. _ TimTheoSTT() : tìm kiếm thông tin về Bài Tập theo số thứ tự. Đ _ TimTheoTen() : tìm kiếm thông tin về Bài Tập theo tên bài. – _ TimTheoChuong() : tìm kiếm thông tin về Bài Tập theo tên bài và chương. _ TimTheoDoKho() : tìm kiếm thông tin về Bài Tập theo tên bài và độ khó. TT 4.3.3. Lớp PhanTu: Ngoài ra, khi thực hiện việc “Giải bài Tập”, lớp BaiGiai phải thực hiện việc giao N tiếp với các lớp khác, hỗ trợ cho việc tìm kiếm kết quả cuối cùng. C A O H K 53
  17. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy 0..n PhanTu (f rom F undam ent ) TN TP HinhHoc TP PhuongTri nh (f rom F undam ent ) (f ro m Fu n d am e n t) H 1.. * 1.. * K BaiGiai TP QuanHe C ongThucQuanHe H 1.. * (f rom BaiGiai LG) (f rom F undam ent ) (f ro m Co ng T h uc Nhap) 1.. * Đ Hình 2.4.3-16 Lớp PhanTu – Lớp PhanTu : đây là lớp ảo và là Phần Tử cơ bản nhất trong mô hình Hỗ Trợ TT Giải Toán, cung cấp các khả năng thiết yếu cho các lớp con thao tác. Bản thân mỗi PhanTu này lại chứa nhiều các đối tượng PhanTu khác. N 4.3.3.1. Danh sách biến thành phần : PhanTu _ Name : tên của Phần Tử được xét. C (f ro m Fu nda m e nt) Nam e : String _ dsPhanTu : danh sách các đối tượng PhanTu khác mà lớp ds PhanTu : PhanTu* A này kiểm soát. KhoiTao() Is Actived() 4.3.3.2. Danh sách hàm thành phần : O OnActi ved() SetTP() _ KhoiTao() : hàm khởi tạo cho các đối tượng có khả năng GetTP() H LayTenD inhNghia() “nạp chồng” (override), xác định tên và số lượng các thành XuatBaiGiai() K phần sở hữu và thực hiện các khởi tạo riêng biệt cho từng lớp con. 54
  18. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy _ IsActived() : xác định xem đối tượng đã được “kích hoạt” chưa, “kích hoạt” là khi đối tượng đã xác định được đầy đủ giá trị. _ OnActived() : đây là 1 hàm bắt sự kiện, được thực thi khi có 1 đối tượng trong dsPhanTu được “kích hoạt” lên, đây là hàm có khả năng “nạp chồng” (override), tùy theo các lớp con khác nhau mà có các phản ứng khác nhau. Nếu bản thân lớp được TN “kích hoạt” thì cũng phát sinh ra sự kiện thông báo cho các đối tượng đang sở hữu nó biết được. H _ SetTP() : cập nhật thông tin lại cho 1 đối tượng PhanTu mà lớp đang nắm giữ. _ GetTP() : lấy thông tin lại cho 1 đối tượng PhanTu mà lớp đang nắm giữ. K _ LayTenDinhNghia() : đây là hàm ảo (abstract), dùng để lấy chuỗi ký tự đặc trưng H dùng để nhận diện cho việc nhập liệu cho lớp. VD : lớp Diem có chuỗi là “ Điểm“, lớp DuongThang có chuỗi là “Đường Thẳng”. Đ _ XuatBaiGiai() : đây là hàm ảo (abstract), dùng để xuất nội dung của đối tượng ra – thành bài giải. 4.3.4. Lớp TPHinhHoc : TT Lớp TPHinhHoc : đây là lớp ảo kế thừa từ lớp PhanTu, thể hiện cho các đối tượng Hình Học có trong 1 bài toán Hình Học Giải Tích, chẳng hạn như : N Điểm, Đường Thẳng, Đường Tròn, Ellipse,…. C 4.3.4.1. Danh sàch hàm thành phần : TPHinhHoc _ OnActived() : kế thừa từ lớp PhanTu, xác định lớp sẽ (f ro m Fun dam ent) A “kích hoạt” khi thoả điều kiện tất cả các đối tượng sở hữu OnActi ved() O đều “kích hoạt”. LayDSThanhPhan() LoadCongThucNhap() VD : đối tượng Điểm A được kích hoạt khi ta xác định XuatSoN ghiem () H XuatKetQua() được 2 giá trị X, Y của A. LayKieuNhapLi eu() K _ LayDSThanhPhan() : lấy tất cả các đối tượng mà nó sở hữu và chính nó. 55
  19. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy _ LoadCongThucNhap() : đây là hàm ảo, dùng để đọc 1 đoạn text xem nó có thực hiện việc “nhập liệu” cho 1 đối tượng Hình Học nào đó không. VD : ta có “Điểm A(0,0)” khi đưa vào hàm này thì ta sẽ nhận được 1 khai báo là khởi tạo 1 đối tượng tên “A” có kiểu là Diem và có giá trị X = Y = 0. _ XuatSoNghiem() : xác định số nghiệm (số kết quả thu được) của 1 đối tượng Hình TN Học, số nghiệm có thể là : 1, 2, … _XuatKetQua() : đây là hàm ảo, dùng để xuất ra bài giải kết luận cuối cùng của đối H tượng Hình Học, thường được dùng cho phần “Kết Luận” của Bài Giải. VD : phần “Kết Luận” của 1 Bài Tập “xác định phương trình Đường Thẳng” ta xuất K ra bằng hàm trên là : “Đường thẳng D có phương trình đường thẳng là …” H _ LayKieuNhapLieu() : lấy tất cả các kiểu nhập liệu được định nghĩa trong chương trình, được dùng trong phần Kiểm Tra Đề Bài, Đáp Án. Đ 4.3.4.2. Sơ đồ phối hợp hoạt động : – _ HamXuatKetQua() : * TT TPHinhHoc TPHinhHoc TPHinhHoc XuatKetQua() GetAt() XuatKetQua() Chương trình đã định nghĩa 1 số lớp kế thừa từ lớp TPHinhHoc để chuyên biệt hoá N các xử lý cho từng đối tượng Hình Học mà thường được sử dụng trong các Bài Toán C Hình học Giải Tích. Ngoài các hàm được kế thừa từ lớp cha, các lớp này chỉ định nghĩa thêm các giá trị A đặc trưng cho từng lớp. O H K 56
  20. Phần mềm hỗ trợ giảng dạy hình học giải tích GVHD : Nguyễn Tiến Huy DuongThang Vector Diem (f rom Geom et ric ) Goc GiaTri (f rom Geom et ric ) (f rom Geom et ric ) A : GiaTri (f rom F undam ent ) (f rom Geom et ric ) X : GiaTri U : GiaTri B : GiaTri Value : SoThuc alpha : Gi aTri Y : GiaTri V : GiaTri C : GiaTri TN TuGiac TamGiac (f rom Geom et ric ) (f rom Geom et ric ) TPHinhHoc A : Diem A : Diem H B : Diem (f rom F undam ent ) B : Diem C : Diem C : Diem D : Diem K H Elli pse Hyperbol D uongTron Parabol (f rom Geom et ric ) (f rom Geom et ric ) (f rom Geom et ric ) (f rom Geom et ric ) Đ I : Diem I : Diem I : Diem I : Diem a : GiaTri a : GiaTri R : GiaTri p : GiaTri b : GiaTri b : GiaTri – TT Hình 2.4.3-17 Lớp TPHinhHoc 4.3.4.3. Danh sách các lớp con : N Lớp GiaTri : thể hiện cho 1 Biến số, Tham số hoặc Hằng số trong 1 Bài Tập, số C lượng đối tượng mà lớp GiaTri nắm giữ chính là số nghiệm của 1 Biến số. Trong đó Value là giá trị thực của lớp (nếu lớp được kích hoạt) và thuộc kiểu A SoThuc, kiểu dùng để thực hiện tính toán với kết quả “số đẹp” như “số căn”, “phân O số”. H Ngoài ra , lớp GiaTri còn được cung cấp 1 số hàm để thực hiện các phép toán +. -, *, /, được dùng để Giải Phương Trình. K Lớp Góc : thể hiện cho 1 giá trị Góc, nhưng ở dưới dạng Radian, và chỉ chấp nhận các giá trị góc đặc biệt như : 0°, 30°, 45°, 90°, … Lớp Vector : thể hiện cho 1 đối tượng Hình Học là Vector có dạng u(U,V). 57
nguon tai.lieu . vn