- Hỏi: Ký tự thứ i đối xứng với ký tự vị trí - Thực hiện soạn thảo chương trình vào máy theo yêu nào?. càu cải tiến của giáo viên..[r]
Trang 1Ngày soạn 04/01/10
Ngày giảng 08/01/10 Bài 14.BÀI THỰC HÀNH 5 (T1)
I MỤC TIÊU
1 Kiến thức:
- Củng cố cho học sinh những kiến thức về xâu ký tự, đặc biệt là các hàm và thủ tục liên quan
- Nắm được một số thuật toán cơ bản : tạo xâu mới, đếm số lần xuất hiện 1 ký tự…
2 Kĩ năng:
- Khai báo được biến kiểu xâu
- Nhập, xuất giá trị cho biến xâu
- Duyệt qua được tất cả các ký tự của xâu
- Sử dụng được các hàm và thủ tục chuẩn
3 Tư duy:
- Các kiểu có cấu trúc là tiền đề cho lập trình logic, tạo ra chương trình ứng dụng
và đồ hoạ
4 Thái độ:
- Tự giác, tích cực, chủ động trong thực hành
II CHUẨN BỊ BÀI GIẢNG
1 Phương tiện:
- GV: phòng máy có cài Pascal
- Tổ chức trong phòng máy để HS có được kỹ năng cơ bản khi làm việc với kiểu xâu
- HS: Sách giáo khoa, vở ghi Xem trước bài học.
2 Phương pháp dạy học
- Gợi mở vấn đáp
- Đàm thoại
- Đặt vấn đề
III TIẾN TRÌNH DẠY HỌC
1 Kiểm tra bài cũ:
- Kết hợp trong giờ thực hành
2 Nội dung bài giảng:
HOẠT ĐỘNG 1 Palidrom
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
1 Quan sát, đọc kỹ đề
Tiết: 31
Trang 2nế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
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
Chúng ta co thể sử dụng câu lệnh For to
hoặc While do
program palindrome ;
var i, x: byte ;
a, p: string ;
begin
write ('nhap vao xau :');
readln (a);
X:= length (a) ;
p:= '' ;
for i:= x downto 1 do
p:= p+a[i];
if a= p then
write ('xau la palindrome')
else
write ('xau khong phai la
palindrome');
readln
end
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ý
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
- Kiểm tra một xâu có phải Palidrom 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.
program palindrome ;
Trang 3tự 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
var i, x: byte ;
a, p: string ; begin
write ('nhap vao xau :');
readln (a);
X:= length (a) ; i:= 1;
while (i<=(x div 2)) and (a[i]=a[x-i+1]) do i:= i+1;
if i>( x div 2) then writeln ('xau la palindrome')
else writeln ('xau khong phai
la xau palindrome');
readln end
- Nhập dữ liệu vào và thông báo kết quả
3 Củng cố:
Nắm đượ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
4 Dặn dò:
- Về nhà hs nào có máy thì tiếp tục thực hành và xem tiếp phần thực hành sau Các
em nghỉ
IV NHẬN XÉT
Phương pháp:
Hiệu quả sử dụng:
Hiệu quả SD TBDH:
ND cần điểu chỉnh:
Nhận xét của giáo viên hướng dẫn: