II. ĐỒ DÙNG DẠY HỌC
1. Hoạt động 1: Tìm hiểu một chương trình, đề xuất phương án cải tiến.
HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH
1. Tìm hiểu đề bài
- Giới thiệu nội dung đề bài lên bảng. - Diễn giải: Một xâu được gọi là Palidrom nếu ta đọc các ký tự từ phải sang trái sẽ giồng khi đọc từ trái sang phải.
- Yêu cầu học sinh cho hai ví dụ về xâu palidrom và một ví dụ không phải là palidrom.
2. Tìm hiểu chương trình gợi ý. - Chiếu chương trình lên bảng.
- Hỏi: Chương trình sau đây có chức năng
1. Quan sát, đọc kỹ đề.
Phải: 12321 abccba Không phải: abcdea
2. Quan sát chương trình, suy nghĩ phân tích để hiểu chương trình.
làm gì? Kết quả in ra màn hình như thế nào?
- Thực hiện chương trình để học sinh kiểm nghiệm suy luận của mình.
3. Cải tiến chương trình.
- Nêu yêu cầu mới: Viết lại chương trình mà không sử dụng biến trung gian p.
- Yêu cầu: Nhận xét về các cặp ở vị trí đối xứng nhau trong một xâu palidrom?
- Hỏi: Ký tự thứ i đối xứng với ký tự vị trí nào?
- Hỏi: Cần phải so sánh bao nhiêu cặp ký tự trong xâu để biết được xâu đó là palidrom? - Hỏi: Dùng cấu trúc lặp nào để so sánh? - Yêu cầu học sinh viết chương trình hoàn chỉnh.
- Yêu cầu học sinh nhập dữ liệu cho sẵn của giáo viên và thông báo kết quả.
- Xác nhận những bài làm có kết quả đúng.
hay không?
- In ra: ‘xau la palidrom’
‘Xau khong la palidrom’ - Quan sát giáo viên thực hiện chương trình, nhập dữ liệu và kết quả của chương trình.
3. Chú ý theo dõi yêu cầu của giáo viên, trả lời một số câu hỏi dẫn dắt. - Các ký tự ở vị trí này giống nhau. - Ký tự thứ i đối xứng với ký tự thứ length()-i+1
- So sánh tối đa length() div 2. - Có thể dùng For hoặc While.
- Thực hiện soạn thảo chương trình vào máy theo yêu càu cải tiến của giáo viên.
- Nhập dữ liệu vào và thông báo kết quả.
2. Hoạt động 2: Rèn luyện kĩ năng lập trình.
HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH
1. Giới thiệu đề bài.
- Chiếu nội dung đề bài lên bảng. Nêu mục đích của bài toán.
- Chia lớp làm hai nhóm:
+ Nhóm 1: Đặt các câu hỏi phân tích + Nhóm 2: Trả lời các câu hỏi phân tích
- Theo dõi những câu hỏi phân tích của nhóm 1 và trả lời câu hỏi phân tích của nhóm 2
1. Quan sát đề và xác định những công việc cần thực hiện.
Nhóm 1:
- Hỏi: Dữ liệu vào, dữ liệu ra của bài toán?
- Nêu các nhiệm vụ chính cần thực hiện khi giải quyết bài toán.
- Hỏi: Cấu trúc dữ liệu phải sử dụng như thế nào?
- Ta phải sử dụng hàm nào? Nhóm 2:
- Bổ sung và sửa sai cho cả nhóm 1 và nhóm 2.
2. Yêu cầu học sinh độc lập viết chương trình hoàn chỉnh theo thuật toán đã phát hiện ở trên.
- Yêu cầu một số học sinh lập trình xong sớm tìm một số bộ test.
- Yêu cầu học sinh nhập dữ liệu vào theo test của giáo viên đã chọn và thông báo kết quả sau khi thực hiện chương trình.
- Xác nhận kết quả đúng của học sinh và sửa sai cho các em có kết quả sai.
- Ra: Dãy các số ứng với sự xuất hiện của mỗi loại ký tự trong xâu.
- TT: Duyệt từ trái sang phải, thêm một đơn vị cho ký tự đọc được.
- Cấu trúc dữ liệu: Dem[‘A’..’Z’] - Dùng hàm Upcase().
2. Độc lập soạn chương trình vào máy.
- Tìm test
- Nhập dữ liệu của giáo viên và thực hiện chương trình để xem kết quả. - Thông báo kết quả cho giáo viên.
IV. ĐÁNH GIÁ CUỐI BÀI
1. Những nội dung đã học
- Một số thuật toán đơn giản liên quan đến xâu ký tự: Kiểm tra một xâu đối xứng, tìm tần suất xuất hiện của các ký tự có trong xâu.
2. Câu hỏi và bài tập về nhà
- Chuẩn bị nội dung cho tiết lý thuyết tiếp theo: Đọc trước nội dung bài kiểu bản ghi, sách giáo khoa, trang 74.
Tiết
KIỂU BẢN GHII. MỤC TIÊU I. MỤC TIÊU
1. Kiến thức
- Biết được khái niệm về kiểu bản ghi.
- Phân biệt được sự giống và khác nhau giữa kiểu bản ghi với kiểu mảng một chiều.
- Khai báo được kiểu bản ghi, khai báo được biến kiểu bản ghi trong ngôn