Ý nghĩa của việc thực hiện chủ đề: Thông qua chủ đề, HS có thể: Vận dụng kiến thức trong bài học để viết được các chương trình xử lí xâu trong pascal.. + Vận dụng kiến thức để viết được
Trang 1CHỦ ĐỀ: DẠY HỌC THEO ĐỊNH HƯỚNG PHÁT TRIỂN NĂNG LỰC HỌC
SINH PHẦN DỮ LIỆU KIỂU XÂU
A Giới thiệu chủ đề
1 Mô tả chủ đề:
- Tên đầu bài: Dữ liệu kiểu xâu
2 Thời gian:
- Thời điểm dạy chủ đề: triển khai dạy từ tiết 26 đến tiết 31 theo kế hoạch dạy học
- Thời gian thực hiện của chủ đề: học kì I lớp 11
3 Ý nghĩa của việc thực hiện chủ đề:
Thông qua chủ đề, HS có thể: Vận dụng kiến thức trong bài học để viết được các chương trình xử lí xâu trong pascal
B Mục tiêu chủ đề.
1 Kiến thức:
Sau bài học giúp học sinh:
+ Biết xâu là một dãy kí tự (có thể coi xâu là mảng một chiều)
+ Khai báo được biến xâu, tham chiếu được đến phần tử của xâu
+ Biết các phép toán liên quan đến xâu (So sánh xâu, ghép xâu)
+ Hiểu, vận dụng được các hàm và thủ tục chuẩn xử lí xâu
2 Kĩ năng
Sau bài học, người học có thể:
+ Khai báo biến xâu.
+ So sánh xâu
+ Vận dụng kiến thức để viết được các chương trình có xử lí xâu, hợp tác để giải
quyết các nhiệm vụ học tập
3 Thái độ:
Sau bài học, người học ý thức: Lập trình là một công việc nghiêm túc đòi hỏi
người lập trình phải biết tư duy sáng tạo, cẩn thận, tuân thủ các quy định nghiêm ngặt của ngôn ngữ lập trình để viết được chương trình Học sinh hướng thú với một kiểu dữ liệu mới
4 Định hướng phát triển năng lực:
+ Năng lực chung: Làm chủ và phát triển bản thân (năng lực tự học, năng lực giải quyết vấn đề, năng lực tư duy sáng tạo…); năng lực xã hội (năng lực giao tiếp, năng lực hợp tác)
+ Năng lực đặc thù: Năng lực sử dụng kiến thức về kiều xâu để viết được các chương trình có xử lí xâu, kĩ năng lập trình
+ Từ đó yêu thích lập trình…
5 Sản phẩm cuối cùng của chủ đề
Trang 2- Các chương trình viết bằng ngôn ngữ lậpn trình pascal của các nhóm học sinh.
C CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1 Giáo viên:
1.1: Dự kiến phương pháp hình thức tổ chức hoạt động học tập cho HS để chiếm lĩnh bài học: làm việc nhóm, làm việc cá nhân, gợi mở, vấn đáp, thực hành trên máy
1.2 Phương tiện:
SGK, giáo án, phòng máy tính, máy chiếu, phiếu học tập
2 Học sinh:
Tìm hiểu SGK, tài liệu tham khảo…Chủ động tìm hiểu nội dung sách giáo khoa theo hệ thống câu hỏi SGK và câu hỏi của GV
D Kế hoạch dạy học
Thời
gian
Tiến trình dạy học
Hoạt động của học sinh
Hỗ trợ của giáo
viên
Kết quả/ sản phẩm
dự kiến
Tiết 1 Hoạt động
khởi động
Xem các slide, nhận nhiệm vụ giải quyết vấn đề
Cho HS xem phần mềm mô phỏng, hình ảnh…
Làm rõ nhiệm vụ học tập
Báo cáo của các nhóm đề xuất giải thích các hiện tượng
Hoạt động hình thành kiến thức
Học sinh làm việc cá nhân
và làm việc nhóm đọc tài liệu
Giao nhiệm vụ trực tiếp hoặc phiếu học tập
Báo cáo kết quả của các nhóm khi tìm hiểu các nội dung
Tiết 2 Hoạt động
hình thành kiến thức
Học sinh làm việc cá nhân
và làm việc nhóm đọc tài liệu
Giao nhiệm vụ trực tiếp hoặc phiếu học tập
Báo cáo kết quả của các nhóm khi tìm hiểu các nội dung
Tiết 3,4,5 Hoạt động
luyện tập
và giao nhiệm vụ
về nhà
Nhận nhiệm
vụ theo tài liệu học tập
Giao nhiệm vụ trực tiếp
Báo cáo kết quả của các nhóm
Tiết 6 Hoạt động
tìm tòi mở
Nhận nhiệm vụ
Giao nhiệm vụ Báo cáo kết quả của
cả nhóm
Trang 3rộng và củng cố kiến thức
E TIẾN TRÌNH TỔ CHỨC CÁC HOẠT ĐỘNG HỌC
1 Ổn định tổ chức: (1 phút)
- Kiểm tra sĩ số, tác phong (2 phút)
- Kiểm tra việc chuẩn bị bài của học sinh (2 phút)
2 Bài mới.
HOẠT ĐỘNG 1: KHỞI ĐỘNG (TÌNH HUỐNG XUẤT PHÁT)
Thời gian: 10 phút
Mục đích:Mục đích của hoạt động này là tạo tâm thế học tập cho HS, giúp HS ý
thức được nhiệm vụ học tập và có hứng thú tìm hiểu về kiểu dữ liêu mới trong lập trình
PP và kĩ thuật thực hiện: Quan sát chương trình và kết quả của chương trình
khi chạy chương trình, vấn đáp, gợi mở, trả lời câu hỏi
Định hướng hình thành năng lực: hình thành trong các em năng lực phát hiện
một kiểu dữ liệu mới trong lập trình.
- GV cho HS xem một chương trình có sử
dụng kiểu xâu:
Chương trình 1:
Program bai1;
Ues crt;
Var s1,s2:string[30];
Begin
Clrscr;
Writeln(‘Nhap ho ten cua ban’);
Readln(s1);
S2:=’Xin chào ’ + S1;
Writeln(s2);
Readln
End.
Chương trình 1:
var i, x: byte;
a,b: string;
begin
write('nhap vao ten cua ban:’); readln(a);
x:=length(a);
b:=‘‘;
for i:= x downto 1 do b:=b+a[i]
writeln(Ten dao nguoc cua ban la: ‘,b);
readln
end.
- Từ đó GV giao nhiệm vụ:
Gợi ý:
Câu 1: Chương trình 1:
Trang 4? Hãy trả lời một số câu hỏi sau:
Câu 1: Quan sát chương trình của cô, em
hãy cho biết có khai báo biến nào mình
chưa học?
Câu 2: Nhập dữ liệu vào có điểm nào khác
so với các chương trình đã học?
- GV dẫn vào bài: Ngoài những kiểu dữ
liệu đã học, để xử lí được các dữ liệu là kí
tự văn bản, ngôn ngữ lập trình còn cung
cấp thêm kiểu dữ liệu xâu để viết chương
trình cho các bài toán có xử lí dữ liệu văn
bản.
Khai báo S:string[30];
Chương trình 2:
Khai báo a:string;
Câu 2: Dữ liệu nhập vào là các kí tự văn bản, không phải dữ liệu số như đã từng học
HOẠT ĐỘNG 2: HOẠT ĐỘNG HÌNH THÀNH KIẾN THỨC.
Thời gian: 25 phút
Mục đích:
- Hình thành khái niệm xâu trong ngôn ngữ lập trình, các yếu tố xác định xâu, khai báo xâu
- Sử dụng được phép ghép xâu, so sánh được hai xâu;
PP và kĩ thuật thực hiện: Quan sát chương trình và kết quả của chương trình
khi chạy chương trình, vấn đáp, gợi mở, trả lời câu hỏi
Định hướng hình thành năng lực: năng lực giao tiếp, tự khám phá, tự học,
phẩm chất tự tin, sáng tạo giải quyết vấn đề.
Hỗ trợ của giáo viên Hoạt động của học
sinh
Nội dung cần đạt
Nhiệm vụ 1:
GV tổ chức hoạt động phát
triển năng lực giao tiếp, tự
khám phá, giải quyết vấn đề
* Mục tiêu:
- Quan sát chương trình trả lời
câu hỏi để phát hiện các khái
niệm về dữ liệu xâu
* Giao nhiệm vụ:
Chia lớp thành 2 nhóm: Phát
phiếu học tập cho mỗi nhóm
Nhóm 1: Em hãy viết lại khai
báo biến xâu trong chương
trình 1 và trả lời các câu hỏi
sau:
? Tên biến xâu
? Độ dài tối đa của xâu
Học sinh quan sát chương trình, tìm hiểu sách giáo khoa, trao đổi thảo luận trong nhóm học tập để đưa ra đáp án.
Nhóm 1:
- Tên biến xâu: s1,s2
- Độ dài tối đa của xâu là:30
- Xâu có độ dài bằng o gọi
1 khái niệm cơ bản về kiểu xâu
và khai báo xâu.
· Một số khái niệm:
Trang 5Ví dụ S:=‘Thanh Liêm’ được
mô tả như sau:
Độ dài xâu S = 10
? Độ dài xâu S = 0 thì xâu S
được gọi là xâu gì?
? Từng kí tự trong xâu S
được gọi là gì?
? S được xem là mảng 1
chiều thì S[7]=?
? Cách viết hằng xâu
? Viết cấu trúc khai báo xâu
Nhóm 2: Em hãy viết lại khai
báo biến xâu trong chương
trình 2 và trả lời các câu hỏi
sau:
? Tên biến xâu
? Độ dài tối đa của xâu
? Ví dụ a:=‘Truong hoc’ được
mô tả như sau: a:
Độ dài xâu a = 10
? Độ dài xâu a = 0 thì xâu a
được gọi là xâu gì?
? Từng kí tự trong xâu a
được gọi là gì?
? a được xem là mảng 1
chiều thì a[8]=?
Giáo viên: Nhận xét rút ra
được nội dung cần đạt trong
phần này
là xâu rỗng.
- Tường kí rự trong xâu gọi
là xâu rỗng.
- S[7]=’L’
- Hằng xâu được viết trong cặp nháy:’’
- Cáu trúc khai báo xâu:
<tên biến xâu>:string[<độ dài lớn nhất của xâu>];
Nhóm 2:
- Tên biến xâu: a,b
- Độ dài tối đa của xâu là:255
- Xâu có độ dài bằng o gọi
là xâu rỗng.
- Tường kí rự trong xâu gọi
là xâu rỗng.
- S[7]=’L’
- Hằng xâu được viết trong cặp nháy:’’
- Cáu trúc khai báo xâu:
<tên biến xâu>:string[<độ dài lớn nhất của xâu>];
- Xâu là một dãy kí tự trong bảng mã ASCII - Mỗi kí tự được gọi là một phần tử của xâu.
- Số lượng kí tự trong xâu được gọi là độ dài của xâu
- Xâu có độ dài bằng 0 gọi là xâu rỗng.
- Tham chiếu tới phần tử trong xâu được xác định thông qua chỉ
số của phần tử trong xâu.
<Tên biến xâu>[chỉ số] VD: S:=‘Thanh Liêm’ S[7] = ‘L’
A:=’Truong hoc’ a[8]=’H’
· Cách khai báo biến xâu:
var <tên biến xâu>: string [<độ dài lớn nhất của xâu>] ;
VD: S: String[30] ;
a: String ;
Chú ý:
- Nếu không khai báo độ dài tối
đa cho biến xâu kí tự thì độ dài ngầm định của xâu là 255
- Hằng xâu kí tự được đặt trong
cặp nháy đơn ‘ ’.
Nhiệm vụ 2:
GV tổ chức hoạt động phát
Chỉ số 1 2 3 4 5 6 7 8 9 10
Chỉ số 1 2 3 4 5 6 7 8 9 10
Trang 6triển năng lực giao tiếp, tự,
giải quyết vấn đề.
- Quan sát chương trình trên,
tìm hiểu sách giáo khoa trả lời
các câu hỏi trắc nghiệp sau:
1 Xâu s1:=’Thanh Liem’
Xâu s2:= ‘Ha Nam’
Xâu s:=s1+ ‘ – ‘ + s2
Vậy kết quả của xâu s là:
A ‘Thanh Liem Ha Nam’
B ‘Thanh Liem–Ha Nam’
C ‘Thanh Liem – Ha Nam’
D ‘Thanh Liem+–+Ha Nam’
2 Kí hiệu của phép ghép xâu
là:
A +
B –
C =
D &
3 Cho s1:= ‘Thanh Liem’;
s2:=’Thanh Liem’;
Chọn các đáp án đúng
A s1 > s2
B s1< s2
C s1 = s2
D s1<> s2
4 Cho s1:= ‘Thanh Liem B’;
s2:=’Thanh Liem’;
Chọn các đáp án đúng
A s1 > s2
B s1< s2
C s1 = s2
D s1<> s2
5.Cho s1:=’Thanh Liem’
s2:= ‘Thanh Tam’
Chọn các đáp án đúng
A s1 > s2
B s1< s2
C s1 = s2
D s1<> s2
- Em hãy rút ra kết luận về
phép ghép xâu và các qui tắc
Tiếp tục thảo luận với các bạn trong nhóm học tập để chọn ra đáp án đúng
1 Đáp án: B
2 Đáp án: A
3 Đáp án: C
4 Đáp án: A
5 Đáp án: B
các thao tác xử lí xâu.
· Phép ghép xâu: Kí hiệu là dấu cộng (+)
VD:
‘Ha’ + ‘ Noi’ + ‘ – ’ + ‘Viet
Nam’
cho kết quả là ‘Ha Noi – Viet
Nam’
· Phép so sánh: <, <=, >, >=, = ,
<>.
- Xâu A là lớn hơn xâu B nếu như kí tự đầu tiên khác nhau giữa chúng kể từ trái sang trong xâu A có mã ASCII lớn hơn
- Nếu A và B là các xâu có độ dài khác nhau và A là đoạn đầu của B thì A là nhỏ hơn B.
- Hai xâu được coi là bằng nhau nếu chúng hoàn toàn giống nhau.
Trang 7về phép so sánh xâu:
Dặn dò (5 phút): Từ những kiến thức đã tìm hiểu ở trên em hãy về xem lại và đọc
trước sách giáo khoa để tìm hiểu các hàm và thủ tục chuẩn xử lí xâu để tiết sau tiếp tục bài học
Tiết 2
1 Ổn định tổ chức: (1 phút)
- Kiểm tra sĩ số, tác phong (2 phút)
- Kiểm tra việc ôn tập liến thức đã học và việc chuẩn bị bài của học sinh (5
phút)
? Nhắc lại các khái niệm về xâu
? Viết cấu trúc khai báo xâu
? Qui tắc so sánh xâu
2 Bài mới.
HOẠT ĐỘNG 2: HOẠT ĐỘNG HÌNH THÀNH KIẾN THỨC.
Thời gian: 15 phút
Mục đích: Hiểu và Sử dụng được các hàm và thủ tục chuẩn để xử lí xâu
PP và kĩ thuật thực hiện:
Dự kiến phương pháp hình thức tổ chức hoạt động học tập cho HS để chiếm lĩnh bài học: làm việc nhóm, làm việc cá nhân, gợi mở, vấn đáp…
chương trình và kết quả của chương trình khi chạy chương trình, vấn đáp, gợi
mở, trả lời câu hỏi
Định hướng hình thành năng lực:
+ Phát triển năng lực giao tiếp, năng lực tự học.
+ Phát triển phẩm chất tự tin, tự trọng
+ Phát triển năng lự lập trình.
Hỗ trợ của giáo viên Hoạt động của học sinh Nội dung cần đạt/ Kết quả dự
kiến Nhiệm vụ 1: (15phút)
Phát triển năng lực
tự học, năng lực giao
tiếp.
- Thiết kế phiếu học
tập cho HS
- Phân chia lớp thành
4 nhóm, giao nhiệm
vụ cho nhóm
- GV hướng dẫn HS
các nội dung cần
- Tìm hiểu trong SGK tin học 11
- Tổng hợp các kiến thức
đã tìm hiểu được để hoàn thành phiếu học tập
- Chuẩn bị nội dung và
Một số thủ tục và hàm chuẩn dùng để xử lí xâu:
- Thủ tục delete (S,vt,n) xóa n
kí tự của xâu S bắt đầu từ vị trí vt
- Thủ tục insert (S1,S2,vt) chèn sâu S1 vào xâu S2 bắt đầu từ vị trí vt của S2
- Hàm copy (S,vt,n) tạo xâu gồm n kí tự liên tiếp bắt đầu từ
vị trí vt của xâu S
- Hàm length (S) cho độ dài xâu S
- Hàm pos (S1,S2) cho vị trí xuất hiện đầu tiên của S1 trong
Trang 8nghiên cứu ở sách
giáo khoa
- Yêu cầu các nhóm
chuẩn bị nội dung và
hình thức bài báo cáo
để báo cáo sản phẩm
của nhóm trước lớp
- Kiểm tra, giám sát
sự chuẩn bị của các
nhóm
- GV gọi một nhóm
lên báo cáo
- GV nhận xét, tổng
kết kiến thức và đánh
giá hoạt động nhóm:
việc tiếp nhận nhiệm
vụ học tập và việc
thực hiện nhiệm vụ
học tập
hình thức bài báo cáo, báo cáo sản phẩm của nhóm trước lớp
- 1 nhóm được GV chỉ định lên báo cáo, các nhóm khác theo dõi, nhận xét, bổ sung hoàn thiện bài
S2
- Hàm upcase (ch) cho chữ cái viết hoa tương ứng với chữ thường trong ch
PHIẾU HỌC TẬP
1 Hoàn thành bảng sau:
Bảng 1:
Thủ tục Giá trị của thao tác Kết quả: Nêu ý nghĩa thủ tục/
hàm Delete(st,vt,n) st:=’toi khong ghet ban’;
vt:= 10;
n:=5;
Đưa ra kết quả:
st:=
Cho ví dụ khác:
st:=
vt:=
n:=
st:=
Insert(s1,s2,n) s1:=’toi khong ghet ban’;
s2:=’rat ’;
n:=4;
s1:=
Cho ví dụ khác:
s1:=
s1:=
Trang 9n:=
Hàm Giá trị của thao tác Kết quả:
Copy(st,vt,n) st:=’toi khong ghet ban’;
vt:= 5;
n:=5;
s:= copy(st,vt,n);
s=
Cho ví dụ khác: s:= copy(st,vt,n);
s=
length(st) st:=’toi khong ghet ban’; a:=length(st)’
a=
Cho ví dụ khác:
st:=
a:=length(st)’
a=
Pos(s1,st) s1:= ‘ghet’’;
s2:=’thuong’;
st:=’toi khong ghet ban’;
x1:=pos(s1,st);
x2:=pos(s2,st);
x1=
x2=
Cho ví dụ khác:
s1:=
s2:=
st:=
x1:=pos(s1,st);
x2:=pos(s2,st);
x1=
x2=
c=
Cho ví dụ khác:
ch:=
c:=upcase(ch);
c=
HOẠT ĐỘNG 3: LUYỆN TẬP.
Thời gian: 20 phút
Mục đích: Vận dụng kiến thức tổng hợp để đọc hiểu được chương trình.
PP và kĩ thuật thực hiện:
Dự kiến phương pháp hình thức tổ chức hoạt động học tập cho HS để chiếm lĩnh bài học: làm việc nhóm, làm việc cá nhân, gợi mở, vấn đáp…
chương trình và kết quả của chương trình khi chạy chương trình, vấn đáp, gợi
mở, trả lời câu hỏi
Định hướng hình thành năng lực:
+ Phát triển năng lực giao tiếp, năng lực tự học.
+ Phát triển phẩm chất tự tin, tự trọng
+ Phát triển năng lực lập trình.
Hỗ trợ của giáo viên Hoạt động của học sinh Nội dung cần đạt/ Kết quả dự
kiến Nhiệm vụ 2:(15 phút)
Phát triển năng lực
giải quyết vấn đề,
năng lực đọc hiểu
Chương trình 1:
- Nhập vào xâu a, xâu b
Trang 10chương trình.
- Chia lớp thành 4
nhóm như trên
- Yêu cầu HS nghiên
cứu SGk và giải thích
các ví dụ trong SGK
+ Nhóm 1: Ví dụ 1,2
+ Nhóm 2: Ví dụ 3
+ Nhóm 3: Ví dụ 4
+ Nhóm 4: ví dụ 5
- Giáo viên chuẩn bị
trước các chương
trình ví dụ sau khi
học sinh thảo luận
đưa ra nhận xét giáo
viên trình chiếu
chương trình tương
ứng để cả lớp quan
sát chương trình
- Tìm hiểu trong SGK tin học 11
- Tổng hợp các kiến thức
để tìm hiểu chương trình :
Nhóm học sinh đưa ra lời giải thích, các nhóm nhận xét, bổ sung:
Nhóm 1:
- Dùng hàm length để tính độ dài hai xâu, so sánh độ dài hai xâu và đưa ra kết quả xâu dài hơn bằng cấu trúc If – then
Chương trình 2:
- Nhập vào xâu a, xâu b
- Dùng hàm length đê tính động dài xâu b để biết vị trí cuối cùng của xâu b
- So sánh phần tử đầu của xâu a
và phần tử cuối của xâu b
Chương trình 3:
- Nhập vào xâu a
- Dùng hàm length để tính độ dài xâu a
- Đưa ra màn hình từng phần tử của xâu theo thứ tự từ sau ra trước
Chương trình 4:
- Nhập vào xâu a
- Tạo ra xâu mới bằng cách khởi tạo xâu b rỗng, dùng hàm length đế tính độ dài xâu a
- Kiểm tra từng kí tự trong xâu
a, nếu kí tự đó không phải dấu cách thì cộng vào xâu b
- Kết quả xâu b không chứa dấu cách
Chương trình 5:
- Nhập vào xâu s1
- Tạo ra xâu mới bằng cách khởi tạo xâu s2 rỗng, dùng hàm length đế tính đô dài xâu s2
- Kiểm tra từng kí tự trong xâu s1, nếu kí tự đó là số (nằm trong khoản từ kí tự ‘0’ đến kí
tự ‘9’