- Kiểu xâu: khai báo, các thao tác xử lý trên xâu. Hàm và thủ tục sử dụng trên xâu. - Kiểu bản ghi: khai báo, truy xuất đến các trường của kiểu bản ghi.
2.Kỹ năng:
- Vận dụng các kiểu dữ liệu có cấu trúc vào làm bài tập. Rèn luyện kĩ năng tư duy thuật toán trong lập trình.
3.Thái độ:
- Nghiêm túc, hứng thú với môn học.
II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH1. Chuẩn bị của giáo viên: 1. Chuẩn bị của giáo viên:
- Giáo án, SGK, sách giáo viên.
2. Chuẩn bị của học sinh:
- Vở ghi, sách giáo khoa, sách bài tập, đồ dùng học tập.
III. TIẾN TRÌNH BÀI DẠY:1. Ổn định tổ chức lớp: 1. Ổn định tổ chức lớp:
Kiểm tra sĩ số:
2. Kiểm tra bài cũ: 3. Nội dung bài mới: 3. Nội dung bài mới:
Hoạt động của GV và HS Nội dung
Hoạt động 1: Chữa bài tập 7 trang 79
GV đọc đề bài 7 và giới thiệu dãy Fibonaxi. Yêu cầu học sinh cho biết Input và Output của bài toán.
HS trả lời:
Input: số nguyên dương N.
Output: số hạng thứ N của dãy Fibonaxi. GV nhận xét và gợi ý để viết chương trình. + Khai báo mảng A để chứa các phần tử của dãy Fibonaxi.
+ Khởi gán A1=1, A2=1;
+ Dùng vòng lặp For để tính A[i]=A[i-1]+A[i-2]
{i=3,4,..,N}
+ Thông báo kết quả AN.
GV gọi một học sinh lên viết phần khai báo, một học sinh viết phần thân chương trình. Sau đó cho học sinh nhận xét và hoàn thiện bài toán.
Hoạt động 2: Chữa bài tập 10 trang 80
Bài 10 trang 80
Gv giới thiệu yêu cầu bài toán. Cho học sinh nêu ý tưởng thuật toán đếm trong xâu S có bao nhiêu ký tự là số?
Hs:suy nghĩ trả lời. Dem:=0;
Bài 7 trang 79:
Dãy F là dãy Fibonaxi nếu
F0=0; F1=1, FN =FN-1+FN-2. với N>=2
Viết chương trình nhập từ bàn phím số nguyên dương N và đưa ra màn hình số hạng thứ N của dãy Fibonaxi. Chương trình của bạn thực hiện được với giá trị lớn nhất với N là bao nhiêu?
Bài 10 trang 80
Viết chương trình nhập từ bàn phím xâu kí tự S có độ dài không quá 100. Hãy cho biết có bao nhiêu chữ số xuất iện trong xâu S, thông báo kết quả ra màn hình.
For i:=1 To length(S) Do
If (S[i]>=’0’) and (S[i] <=’9’) Then Dem:=Dem+1;
GV: Ngoài cách viết thuật toán như trên ta còn có cách viết nào khác nửa?
Hs: suy nghĩ trả lời
- Tách dãy từ xâu S thành một xâu con chỉ có số (Ví dụ 4).
- Sử dụng hàm Length(S1)
Gv:Yêu cầu học sinh viết chương trình, sử dụng cả 2 cách.
HS lên bảng viết chương trình.
GV nhận xét và giúp học sinh hoàn thiện bài toán.
Hoạt động 3: Chữa bài tập 11 trang 80
Bài 11:
Gv: Yêu cầu Hs đọc câu hỏi bài tập 11/80 và xem lại ví dụ bài tập tiết 34và trả lời câu hỏi sau:
Hãy xem ví dụ 3 trong SGK bổ sung thêm đoạn chương trình và đưa ra màn danh sách những học sinh chỉ có xếp loại A?
Hs:Đọc đề bài kết hợp với ví dụ trong SGK để sửa lại chương trình
Gv: Phân tích từng câu lệnh của Hs đưa ra=>Kết luận chương trình cụ thể
Var S:String; i, Dem:Byte; Begin
Write(‘Nhap xau S=’);Readln(S); Dem:=0;
For i:=1 To length(S) Do
If (S[i]>=’0’) and (S[i] <=’9’) Then Dem:=Dem+1;
Write(‘Tong so ky tu la so’,Dem); Readln;
End.
Bài tập 11/80(SGK):
Lưu ý vận dụng bài tập tiết 34
Hãy bổ sung thêm vào chương trình Xeploai (ở bài 13) những lệnh cần thiết để chương trình đưa ra danh sách học sinh xếp loại A. Writeln(' TT ',' Ho va Ten ', ' Xloai '); For i:=1 to n do If lop[i].xeploai='A' Then Begin Write(i:4); Write(Lop[i].ten:30); Write(Lop[i].Xeploai); Writeln; End; 4. Củng cố, luyện tập:
- Nắm vững cách khai báo biến, cách thực hiện và một số phép toán cơ bản khi sử dụng mảng một chiều, cách khai báo biến xâu và sử dụng các phép toán, hàm và thủ tục trong xâu để viết chương trình.
- Củng cố lại cách khai báo kiểu bản ghi và gán giá trị của bản ghi.
5. Hướng dẫn học sinh học bài ở nhà:
- Cho bài tập về nhà: Viết chương trình nhập vào một xâu sau đó chuyển các kí tự hoa của xâu đã nhập sang kí tự thường.
Gợi ý: + Khai báo biến st kiểu xâu, biến i điều khiển lệnh For. + Nhập xâu st.
+ Duyệt xâu với mỗi kí tự trên xâu kiểm tra nếu thuông khoảng [‘A’..’Z’] thì thực hiện st:=chr(st[i]+32).
+ Hiển thị xâu ra màn hình.
- Đọc trước bài 14, 15 Kiểu dữ liệu, thao tác với tệp.