Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 68 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
68
Dung lượng
8,14 MB
Nội dung
TRƯỜNG ĐẠI HỌC MỞ THÀNH PHỐ HỒ CHÍ MINH KHOA CÔNG NGHỆ THÔNG TIN TÀI LIỆU HƯỚNG DẪN ÔN TẬP VÀ KIỂM TRA MƠN: LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mục đích Tài liệu nhằm hỗ trợ cho học viên hình thức giáo dục từ xa nắm vững nội dung ôn tập làm kiểm tra hết môn hiệu Tài liệu cần sử dụng với tài liệu học tập môn học giảng giảng viên ơn tập tập trung theo chương trình đào tạo Nội dung hướng dẫn Nội dung tài liệu bao gồm nội dung sau: • Phần 1: Các nội dung trọng tâm môn học Bao gồm nội dung trọng tâm môn học xác định dựa mục tiêu học tập, nghĩa kiến thức kỹ cốt lõi mà người học cần có hồn thành mơn học • Phần 2: Cách thức ôn tập Mô tả cách thức để hệ thống hóa kiến thức luyện tập kỹ để đạt nội dung trọng tâm • Phần 3: Hướng dẫn làm kiểm tra Mơ tả hình thức kiểm tra đề thi, hướng dẫn cách làm trình bày làm lưu ý sai sót thường gặp, nỗ lực đánh giá cao làm • Phần 4: Đề thi mẫu đáp án Cung cấp đề thi mẫu đáp án, có tính chất minh hoạ nhằm giúp học viên hình dung yêu cầu kiểm tra cách thức làm thi (Bảng chi tiết đính kèm) PHỤ TRÁCH KHOA CÔNG NGHỆ THÔNG TIN Lê Xuân Trường -1- PHẦN CÁC NỘI DUNG TRỌNG TÂM Chương 1: Tổng quan a Phân tích: b Thiết kế hệ thống: c Thiết kế đối tượng: -2- d Cài đặt: Trừu tượng hoá: Tính đóng gói: Kết hợp liệu hành vi: mô hình đối tượng mô hình động mô hình chức -3- a Đối tượng lớp: nét nhận dạng Lớp đối tượng : Người thuộc tính thuộc tính Tuổi, Cân nặng b Quan hệ: liên kết hoạt động Tên, Người làm việc cho quan hệ -4- c Khái quát hoá kế thừa: Khái quát hoá kế thừa một một -5- biến cố trạng thái sơ đồ trạng thái Sơ đồ dòng liệu xử lý dòng liệu kho liệu Chương 2: Lớp Lớp & Đối tượng -6- đối tượng chủ động Nhận xét: ▪ -7- ▪ khó theo dõi quản lý hệ thống lớn ▪ hàm hay thủ tục đóng vai trò trọng tâm ▪ -8- Nhận xét: ▪ ▪ ▪ đối tượng đóng vai trò trọng tâm ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ -9- ▪ ▪ ▪ o o ▪ - 10 - - 54 - - 55 - - 56 - - 57 - PHẦN CÁCH THỨC ƠN TẬP • Bám sát đề cương chi tiết mơn học • Học theo Slide giảng giáo trình học tập • Xem lại tập giải giảng viên cung cấp lớp làm tập nhà • Lập trình chạy thử số tập tiêu biểu máy vi tính, chỉnh sửa lỗi biên dịch chương trình có - 58 - PHẦN HƯỚNG DẪN LÀM BÀI KIỂM TRA Hình thức kiểm tra kết cấu đề • Hình thức kiểm tra tự luận • Kết cấu đề thi: đề thi có từ - câu Mỗi câu chọn từ dạng sau: − Các tập lớp: chế tự tham khảo, tạo hủy đối tượng, hàm bạn, lớp bạn, template − Các tập định nghĩa phép toán − Thiết kế thực lớp mối quan hệ kế thừa − Thiết kế thực lớp vấn đề xử lý đa hình Hướng dẫn làm bài: • Trước hết phải tìm yêu cầu bài, gạch đọc thật kỹ để làm vừa đủ theo yêu cầu Làm thừa so với yêu cầu khơng tính điểm • Khơng cần làm theo thứ tự Câu dễ làm trước - 59 - PHẦN ĐỀ THI MẪU VÀ ĐÁP ÁN Đề thi Câu (6đ): Cho Stack liên kết (Linked Stack) có thành phần Node có cấu trúc sau: template struct Node { TYPE data; Node *next; }; Sinh viên thực hàm trường public lớp Stack: template class Stack { private: int count; Node *top; public: Stack (void); ~Stack (void); bool pushStack (TYPE dataIn); bool popStack (TYPE& dataOut); bool stackTop (TYPE& dataOut); bool emptyStack (void); bool fullStack (void); int stackCount (void); bool printStack (void); }; // class Stack Câu (4đ): Hiện thực hàm tải toán tử cộng (operator + ) tải toán tử trừ (operator -) lớp Distance Các hàm tải cho phép câu lệnh dist3 = dist1 + dist2; dist3 = dist1 dist2; Giả sử phép trừ dist1 ln lớn dist2 Viết chương trình kiểm tra hàm (lưu ý: 12 inches = feet) - 60 - class Distance { private: int feet; float inches; public: Distance ( ) : feet (0), inches (0.0) { } Distance ( ) : feet (ft), inches (in) { } getdist () { cout > feet; cout > inches; } void showdist() const { cout data; top = top->next; count ; delete dltPtr; success = true; } // else return success; } // popStack /*=================== stackTop ==================*/ template bool Stack :: stackTop (TYPE& dataOut) { // Local Definitions bool success; // } Statements if (count == 0) success = false; else { dataOut = top->data; success = true; } // else return success; // stackTop /*================ emptyStack ================ */ template - 64 - bool Stack :: emptyStack (void) { // Statements return (count == 0); } // emptyStack /* ================= fullStack =================== */ template bool Stack :: fullStack (void) { // Local Definitions Node *temp; // } Statements temp = new Node; if (temp != NULL) { delete temp; return false; } // if // allocation failed return true; // fullStack /* ==================== stackCount =================== */ template int Stack :: stackCount(void) { // Statements return count; } // stackCount /* ================= printStack ================ */ template bool Stack :: printStack (void) { // Local Definitions Node *temp; TYPE dataOut; - 65 - // } bool success; Statements if (count == 0) { cout next; cout