Tải bản đầy đủ (.docx) (147 trang)

Giáo án tin học lớp 10 sách cánh diều (trọn bộ kì 2)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (20.33 MB, 147 trang )

Tên bài dạy
CHỦ ĐỀ F: CHỦ ĐỀ F: GIẢI QUYẾT VẤN ĐỀ VỚI SỰ TRỢ GIÚP CỦA
MÁY TÍNH LẬP TRÌNH CƠ BẢN
BÀI 10
CHƯƠNG TRÌNH CON VÀ THƯ VIỆN
CÁC CHƯƠNG TRÌNH CON CĨ SẴN
Mơn học: Tin Học; Lớp: 10
Thời gian thực hiện: 2 tiết

I. MỤC TIÊU
1. Kiến thức:


Xây dựng và sử dụng được chương trình con trong Python.



Sử dụng được chương trình con xây dựng sẵn của hệ thống

2. Năng lực:
- Năng lực chung:
+ Giải quyết được những nhiệm vụ học tập một cách độc lập, theo nhóm và
thể hiện sự sáng tạo.
+ Góp phần phát triển năng lực giao tiếp và hợp tác qua hoạt động nhóm và
trao đổi cơng việc với giáo viên.
- Năng lực riêng:
+ HS được phát triển tư duy và khả năng giải quyết được vấn đề, năng lực
giao tiếp, hợp tác, sáng tạo, tự chủ và tự học.
3. Phẩm chất: Nghiêm túc, tập trung, tích cực chủ động.
II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU
1. Giáo viên


- Chuẩn bị Bài giảng, máy chiếu, máy chiếu vật thể.
2. Học sinh
- Sách giáo khoa, vở ghi
1


- Kiến thức đã học
III. TIẾN TRÌNH DẠY HỌC
1. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU)
- Mục tiêu: Tạo hứng thú học tập cho học sinh
- Nội dung: Hs dựa vào hiểu biết để trả lời câu hỏi
- Sản phẩm: Từ yêu cầu Hs vận dụng kiến thức để trả lời câu hỏi GV đưa ra
- Tổ chức thực hiện: GV giới thiệu và dẫn dắt vào bài
GV. ? Khi giải quyết một bài tốn, ta có thể phân chia nó thành một số bài tốn
con. Nếu lập trình để máy tính giải quyết một bài tốn, em hãy bình luận về ý
tưởng: Mỗi đoạn chương trình giải quyết một bài tốn con sẽ được gọi là một
chương trình con và được đặt tên
HS. Trả lời
2. HÌNH THÀNH KIẾN THỨC MỚI
Hoạt động 1: Tìm hiểu khái niệm chương trình con
- Mục Tiêu:
con

+ Biết khái niệm chương trình con và lợi ích của chương trình

- Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu của
GV
- Sản phẩm: Hs hồn thành tìm hiều kiến thức
- Tổ chức thực hiện:


Sản phẩm dự kiến

Hoạt động của giáo viên và học
sinh

1. KHÁI NIỆM CHƯƠNG TRÌNH CON

* Bước 1: Chuyển giao nhiệm
Bài tốn: Cho ba tam giác có độ dài ba vụ:
cạnh lần lượt là a, b và c; u, v và w; p, q và GV: Nêu đặt câu hỏi
r. Độ dài các cạnh đều là số thực cùng đơn ? Khi giải quyết một bài toán phức
vị đo. Em hãy tính diện tích của mỗi tam tạp, người ta thường phân chia bài
giác đó và đưa ra diện tích lớn nhất trong tốn đó thành một số bài tốn con.
các diện tích tính được. Cơng thức Heron Em sẽ chia bài tốn sau đây thành
tính diện tích tam giác theo độ dài ba cạnh: những bài toán con nào?
HS: Thảo luận, trả lời
* Bước 2: Thực hiện nhiệm vụ:
2


Sản phẩm dự kiến

Hoạt động của giáo viên và học
sinh
+ HS: Suy nghĩ, tham khảo sgk trả
lời câu hỏi

=> Kết luận

- Khi lập trình để giải một bài tốn có thể + GV: quan sát và trợ giúp các

chia bài tốn đó thành các bài tốn con, viết cặp.
các đoạn chương trình giải các bài tốn con * Bước 3: Báo cáo, thảo luận:
- Sau đó xây dựng chương trình giải quyết + HS: Lắng nghe, ghi chú, một HS
bài toán ban đầu bằng cách sử dụng các phát
đoạn chương trình đã viết cho các bài tốn biểu lại các tính chất.
con
+ Các nhóm nhận xét, bổ sung cho
- Chương trình con là một đoạn câu lệnh
nhau.
thực hiện một việc nào đó được đặt tên
* Bước 4: Kết luận, nhận định: G
V


chính xác hóa và gọi 1 học si
nh nhắc lại kiến thức

Hoạt động 2: Tìm hiểu Khai báo và gọi một hàm cần thực hiện trong Python
a) Mục tiêu: Nắm được cách khai báo chương trình con và cách sử dụng
chương trình con
b) Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu của
GV.
c) Sản phẩm: HS hồn thành tìm hiểu kiến thức
d) Tổ chức thực hiện:
Sản phẩm dự kiến

Hoạt động của giáo viên
và học sinh

2. KHAI BÁO VÀ GỌI MỘT HÀM CẦN THỰC * Bước 1: Chuyển giao

HIỆN TRONG PYTHON
nhiệm vụ:
Có thể gọi một chương trình con trong Python là một
hàm
GV: Em tìm hiểu trong
SGK và cho biết cách khai
• Cách khai báo hàm trong Python như sau:
báo chương trình con
def tên_hàm (tham số):
trong Python?
Các lệnh mô tả hàm
HS: Thảo luận, trả lời


3


Sản phẩm dự kiến
Trong đó:

Hoạt động của giáo viên
và học sinh
HS: Lấy các ví dụ trong
thực tế.



Tên hàm phải theo quy tắc đặt tên trong Python




Theo sau hàm có thể có hoặc khơng có tham số



Phần thân hàm (gồm các lệnh mô tả hàm) phải viết lùi * Bước 2: Thực hiện
nhiệm vụ:
vào theo quy định của Python
+ HS: Suy nghĩ, tham khả
o sgk trả lời câu hỏi
+ GV: quan sát và trợ giúp
các cặp.
* Bước 3: Báo cáo, thảo
luận:
+ HS: Lắng nghe, ghi chú,
một HS phát
biểu lại các tính chất.
+ Các nhóm nhận xét, bổ s
ung cho
nhau.
* Bước 4: Kết luận, nhận
định: GV
chính xác hóa và gọi 1 học
sinh nhắc lại kiến thức
Hoạt động 3: Tìm hiểu Chuyển dữ liệu cho hàm thực hiện
a) Mục tiêu: Nắm được cách khai báo chương trình con và cách sử dụng
chương trình con
b) Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu của
GV.
4



c) Sản phẩm: HS hồn thành tìm hiểu kiến thức
d) Tổ chức thực hiện:
Hoạt động của giáo viên và
học sinh

Sản phẩm dự kiến
3. CHUYỂN DỮ LIỆU CHO HÀM THỰC
HIỆN

* Bước 1: Chuyển giao nhiệm
vụ:

Các bước sửa chương trình “VD_ptb1.py”








GV: Chương trình trong Hình 2
Bổ sung tham số a, b vào trong cặp ngoặc () ở khai báo ptb1(), hàm này giải
phương trình bậc nhất một ẩn ax
dịng khai báo hàm, để được ptb1(a, b)
+ b = 0. Khi được gọi thực hiện,
Xóa trong thân hàm hai lệnh nhập hệ số a, b từ hàm ptb1() yêu cầu nhập các hệ
bàn phím

số a, b từ bàn phím, biện luận
Thay lời gọi ptb1() bằng ptb1(5, 4) để hàm thực và giải phương trình rồi đưa ra
hiện với a = 5, b = 4
kết quả.
Thêm các lời gọi thực hiện hàm ptb1(a, b) tương
ứng với cặp hệ số a = 0, b = 0 và a = 0, b = 4



Em hãy soạn thảo chương
trình ở Hình 2 đặt tên là
“VD_ptb1.py”, sau đó chạy
chương trình với các dữ liệu
đầu vào như Hình 3 và đối
chiếu kết quả.



Em hãy sửa lại chương trình
“VD_ptb1” theo các bước
trong Bảng 1, đặt tên là
“Try_ptb1.py”, chạy thử và
trả lời hai câu hỏi sau:



Chương trình “Try_ptb1.py”
đã truyền trực tiếp hệ số a =
5, b = 4 vào lời gọi hàm
ptb1(5, 4), kết quả khi chạy

có khác gì với kết quả chạy
chương trình ở Hình 2
khơng?



Vì sao trong chương trình
“Try_ptb1.py”, thân của hàm
không cần những câu lệnh
nhập giá trị cho các hệ số a,

Có hai cách truyền dữ liệu cho hàm thực hiện:
+ Cách 1: chương trình gọi thực hiện hàm với các
giá trị cụ thể
+ Cách 2: chương trình gọi thực hiện hàm với giá
trị tham số truyền vào
Ví dụ 1:


Chương trình “Try1_ptb1.py”, lời gọi ptb1(5, 4)
đã làm hàm ptb1(a, b) được thực hiện với a = 5, b
=4

Ví dụ 2:
- Chương trình ở Hình 4 khai báo và sử dụng hàm
BMI(h, w) tính chỉ số sức khỏe BMI theo hai tham
số chiều cao và cân nặng.

5



Sản phẩm dự kiến

Hoạt động của giáo viên và
học sinh
b?
HS: Thảo luận, trả lời
HS: Lấy các ví dụ trong thực tế.
* Bước 2: Thực hiện nhiệm
vụ:
+ HS: Suy nghĩ, tham khảo sgk
trả lời câu hỏi
+ GV: quan sát và trợ giúp các
cặp.
* Bước 3: Báo cáo, thảo
luận:
+ HS: Lắng nghe, ghi chú, một
HS phát
biểu lại các tính chất.
+ Các nhóm nhận xét, bổ sung c
ho
nhau.
* Bước 4: Kết luận, nhận định
: GV
chính xác hóa và gọi 1 học sinh
nhắc lại kiến thức

Hoạt động 4: Tìm hiểu lời gọi hàm
a) Mục tiêu: Biết cách sử dụng chương trình con
b) Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu của

GV.
c) Sản phẩm: HS hoàn thành tìm hiểu kiến thức
d) Tổ chức thực hiện:
Sản phẩm dự kiến
4. LỜI GỌI HÀM

Hoạt động của giáo viên
và học sinh
* Bước 1: Chuyển giao
nhiệm vụ:
6


Hoạt động của giáo viên
và học sinh

Sản phẩm dự kiến




Trong Python, một hàm có thể trả về một giá trị qua GV:
tên của nó nếu như có lệnh return <Giá _trị> trước HS: Thảo luận, trả lời
khi ra khỏi hàm
HS: Lấy các ví dụ trong
Ví dụ 3:
thực tế.
* Bước 2: Thực hiện
nhiệm vụ:
+ HS: Suy nghĩ, tham khảo

sgk trả lời câu hỏi
+ GV: quan sát và trợ giúp
các cặp.
* Bước 3: Báo cáo, thảo
luận:
+ HS: Lắng nghe, ghi chú,
một HS phát
biểu lại các tính chất.
+ Các nhóm nhận xét, bổ su
ng cho
nhau.
* Bước 4: Kết luận, nhận
định: GV
chính xác hóa và gọi 1 học s
inh nhắc lại kiến thức
Hoạt động 5: Tìm hiểu các hàm được xây dựng sẵn
a) Mục tiêu: Nắm được một số hàm được xây dựng sẵn
b) Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu của
GV.
c) Sản phẩm: HS hồn thành tìm hiểu kiến thức
d) Tổ chức thực hiện:
Sản phẩm dự kiến

5. CÁC HÀM ĐƯỢC XÂY DỰNG SẴN

Hoạt động của giáo viên
và học sinh
* Bước 1: Chuyển giao
7



Sản phẩm dự kiến







Hoạt động của giáo viên
và học sinh

Mỗi tập hợp gồm một số các hàm được xây dựng sẵn nhiệm vụ:
thường gọi là một thư viện
GV:
Ví dụ:
HS: Thảo luận, trả lời
Một số hàm trong thư viện chuẩn của Python như: HS: Lấy các ví dụ trong
print(), input(), …
thực tế.
Một số hàm toán học trong thư viện math như: gcd(x, * Bước 2: Thực hiện
y) trả về ước chung lớn nhất của x và y
nhiệm vụ:

=> Để có thể sử dụng các hàm trong thư viện cần kết + HS: Suy nghĩ, tham khảo
nối thư viện hoặc hàm đó với chương trình. Có 2 cách sgk trả lời câu hỏi
thông dụng để kết nối hàm và thư viện
+ GV: quan sát và trợ giúp
các cặp.
* Bước 3: Báo cáo, thảo

luận:
+ HS: Lắng nghe, ghi chú,
một HS phát
biểu lại các tính chất.
+ Các nhóm nhận xét, bổ su
Ví dụ 4: Chương trình ở Hình 7 kết nối hàm gcd trong
ng cho
thư viện math
nhau.
* Bước 4: Kết luận, nhận
định: GV
chính xác hóa và gọi 1 học s
inh nhắc lại kiến thức
3. HOẠT ĐỘNG LUYỆN TẬP
a. Mục tiêu: Củng cố, luyện tập kiến thức vừa học.
b. Nội dung: HS đọc SGK làm các bài tập.
c. Sản phẩm: Bài làm của học sinh, kĩ năng giải quyết nhiệm vụ học tập.
d. Tổ chức thực hiện:
Gv Cho HS nhắc lại KT:
8


Hs: Nhắc lại các vấn đề đã học
Bài 1. Với hàm BSCNN được xây dựng ở chương trình sau đây (Hình 8), trong
những dịng lệnh có sử dụng hàm BSCNN, dòng lệnh nào đúng, dòng lệnh nào
sai và tại sao?

4. HOẠT ĐỘNG VẬN DỤNG
a. Mục tiêu: Vận dụng các kiến thức vừa học quyết các vấn đề học tập và thực
tiễn.

b. Nội dung:.
c. Sản phẩm: HS vận dụng các kiến thức vào giải quyết các nhiệm vụ đặt ra.
d. Tổ chức thực hiện:
Gv đưa câu hỏi về nhà:
Bài 2. Chương trình ở (Hình 9), xây dựng một hàm tính diện tích một tam giác
bằng cơng thức Heron theo ba cạnh của tam giác. Em hãy hồn thiện chương
trình bằng lời gọi hàm thích hợp để đưa ra màn hình kết quả diện tích của tam
giác có ba cạnh là 3, 4, 5

5. Hướng dẫn học sinh tự học:
- Hướng dẫn học bài cũ:
- Hướng dẫn chuẩn bị bài mới:
.................................................................................................................................
..........................................
Tên bài dạy
CHỦ ĐỀ F: GIẢI QUYẾT VẤN ĐỀ VỚI SỰ TRỢ GIÚP CỦA MÁY TÍNH
9


LẬP TRÌNH CƠ BẢN
BÀI 11
THỰC HÀNH LẬP TRÌNH VỚI HÀM VÀ
THƯ VIỆN
Môn học: Tin Học; Lớp: 10
Thời gian thực hiện: 2 tiết

I. MỤC TIÊU
1. Kiến thức:



Chạy và kiểm thử được chương trình



Rèn luyện được kĩ năng viết chương trình có khai báo và gọi hàm



Tìm hiểu và sử dụng được hàm time có trong thư viện

2. Năng lực:
- Năng lực chung:
+ Giải quyết được những nhiệm vụ học tập một cách độc lập, theo nhóm và
thể hiện sự sáng tạo.
+ Góp phần phát triển năng lực giao tiếp và hợp tác qua hoạt động nhóm và
trao đổi cơng việc với giáo viên.
- Năng lực riêng:
+ HS được phát triển tư duy và khả năng giải quyết được vấn đề, năng lực
giao tiếp, hợp tác, sáng tạo, tự chủ và tự học.
3. Phẩm chất: Nghiêm túc, tập trung, tích cực chủ động.
II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU
1. Giáo viên
- Chuẩn bị Bài giảng, máy chiếu, máy chiếu vật thể.
2. Học sinh
- Sách giáo khoa, vở ghi
- Kiến thức đã học
10


III. TIẾN TRÌNH DẠY HỌC

1. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU)
- Mục tiêu: Tạo hứng thú học tập cho học sinh
- Nội dung: Hs dựa vào hiểu biết để trả lời câu hỏi
- Sản phẩm: Từ yêu cầu Hs vận dụng kiến thức để trả lời câu hỏi GV đưa ra
- Tổ chức thực hiện: GV giới thiệu và dẫn dắt vào bài
2. HÌNH THÀNH KIẾN THỨC MỚI
Hoạt động 1: Tìm hiểu Bài 1. Giải phương trình
- Mục Tiêu:

+ Biết máy tính tính tốn nhanh

+ Biết quan hệ giữa thơng tin và dữ liệu
- Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu của
GV
- Sản phẩm: Hs hồn thành tìm hiều kiến thức
- Tổ chức thực hiện:

Sản phẩm dự kiến

Hoạt động của giáo viên và học
sinh

BÀI 1. GIẢI PHƯƠNG TRÌNH

* Bước 1: Chuyển giao nhiệm
Chương trình cho trong Hình 1 nhằm tạo một vụ:
bảng chọn việc, để người chạy chương trình GV: Nêu đặt câu hỏi
chọn cho máy tính giúp giải phương trình bậc - Em hãy viết các chương trình
nhất hay giải phương trình bậc hai. Em hãy
con GPTB1 Và chương trình

đưa khai báo của các hàm thực hiện hai việc
con GPTB2?
nói trên và các lời gọi chúng vào đúng chỗ
trong chương trình. Sau đó hãy chạy thử - Chèn lời gọi chương trình con
vào đúng chỗ trong chương
chương trình với một số dữ liệu đầu vào khác
trình mẫu Hình 1
nhau để kiểm thử chương trình.
HS: Thảo luận, trả lời
* Bước 2: Thực hiện nhiệm
vụ:
+ HS: Suy nghĩ, tham khảo sgk t
rả lời câu hỏi
+ GV: quan sát và trợ giúp các
11


Sản phẩm dự kiến

Hoạt động của giáo viên và học
sinh
cặp.
* Bước 3: Báo cáo, thảo luận:
+ HS: Lắng nghe, ghi chú, một H
S phát
biểu lại các tính chất.
+ Các nhóm nhận xét, bổ sung ch
o
nhau.
* Bước 4: Kết luận, nhận định:

GV


chính xác hóa và gọi 1 học
sinh nhắc lại kiến thức

=>
def GPTB1(a,b):
if a == 0:
if b == 0: print("PT có vơ số nghiệm")
else: print("PT vơ nghiệm")
else: print("PT có 1 nghiệm duy nhất x =",b/a)
def GPTB2(a,b,c):
if a == 0:
if b == 0:
if c == 0: print("PT có vơ số
nghiệm")
else: print("PT vơ nghiệm")
else: print("PT có nghiệm x =",-c/b)
else:
d = b*b - 4*a*c
if d < 0: print("PT vô nghiệm")
12


Sản phẩm dự kiến

Hoạt động của giáo viên và học
sinh


elif d == 0: print("PT có nghiệm kép x
=",-b/(2*a))
else:
print("PT có 2 nghiệm phân biệt","x1
=",(-b-d**0.5)/(2*a),"x2
=",(-b+d**0.5)/
(2*a))
a,b,c = float(input("a = ")),float(input("b =
")),float(input("c = "))
while True:
print("*****************************
")
print("BẢNG CHỌN VIỆC")
print("1. Giải phương trình bậc nhất")
print("2. Giải phương trình bậc hai")
print("3. Thốt khỏi cơng việc")
print("*****************************
")
chon = input("Hãy chọn 1 hay 2 hay 3: ")
if chon == "1":
print("Giải phương trình bậc nhất")
GPTB1(a,b)
elif chon == "2":
print("Giải phương trình bậc hai")
GPTB2(a,b,c)
else:
print("Tạm biệt")
break
Hoạt động 2: Tìm hiểu bài tốn thời gian gặp nhau
13



a) Mục tiêu: rèn Năng lực lập trình
b) Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu của
GV.
c) Sản phẩm: HS hoàn thành tìm hiểu kiến thức
d) Tổ chức thực hiện:
Sản phẩm dự kiến

Hoạt động của giáo viên và
học sinh

BÀI 2. THỜI GIAN GẶP NHAU

* Bước 1: Chuyển giao
Hiện tại anh trai Khánh Nam đang ở thành phố A còn nhiệm vụ:
em gái Sương Mai đang ở thành phố B. Khoảng cách
giữa hai thành phố đó là d km. Hai anh em đi ô tô GV:
xuất phát cùng một thời điểm từ hai thành phố, ô tô
khởi hành từ A đi về B với tốc độ không đổi v1 km/h, HS: Thảo luận, trả lời
ô tô khởi hành từ B đi đến A với tốc độ khơng đổi v2 HS: Lấy các ví dụ trong thực
km/h; trong đó d, v1, v2 là các số thực. Chương trình tế.
ở Hình 2 khai báo mtime với các tham số d, v1, v2 để
xác định thời gian hai ơ tơ gặp nhau tính từ lúc xuất
* Bước 2: Thực hiện nhiệm
phát. Em hãy:
vụ:
• Hồn thiện chương trình ở Hình 2 bằng cách bổ
sung cho chương trình lời gọi hàm mtime với dữ
+ HS: Suy nghĩ, tham khảo sg

liệu nhập từ bàn phím
k trả lời câu hỏi
• Chạy chương trình và chạy thử chương trình với ít
+ GV: quan sát và trợ giúp các
nhất hai bộ dữ liệu vào khác nhau.
cặp.
Hướng dẫn: Viết hàm mtime với tham số d, v1, v2 và
trả về thời gian gặp nhau
* Bước 3: Báo cáo, thảo
luận:
+ HS: Lắng nghe, ghi chú, một
HS phát
biểu lại các tính chất.
+ Các nhóm nhận xét, bổ sung
cho
nhau.
14


Sản phẩm dự kiến

Hoạt động của giáo viên và
học sinh
* Bước 4: Kết luận, nhận địn
h: GV
chính xác hóa và gọi 1 học sin
h nhắc lại kiến thức

Hoạt động 3: Tìm hiểu thời gian thực hiện chương trình
a) Mục tiêu: biết vận dụng hàm tính thời gian thực hiện chương trình

b) Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu của
GV.
c) Sản phẩm: HS hồn thành tìm hiểu kiến thức
d) Tổ chức thực hiện:
Sản phẩm dự kiến
BÀI 3. THỜI GIAN THỰC HIỆN CHƯƠNG
TRÌNH
Hàm time (với lời gọi time()) trong thư viện time
cho biết thời gian tại điểm hiện tại (tính theo giây).
Để biết thời gian thực hiện chương trình, người ta ghi
nhận thời điểm lúc bắt đầu thực hiện chương trình,
thời điểm lúc kết thúc chương trình và đưa ra hiệu
các thời điểm đã xác định. Em hãy gắn hàm time từ
thư viện time vào một số chương trình đã có của em
và đưa ra thời gian thực hiện chương trình.
Hướng dẫn:

Hoạt động của giáo viên và
học sinh
* Bước 1: Chuyển giao
nhiệm vụ:
GV:
HS: Thảo luận, trả lời
HS: Lấy các ví dụ trong thực
tế.
* Bước 2: Thực hiện nhiệm
vụ:




Gắn thư viện time vào chương trình: import time



Để ghi nhận thời điểm bắt đầu viết câu lệnh thực + HS: Suy nghĩ, tham khảo sg
hiện đầu tiên là: tb = time.time()
k trả lời câu hỏi
Cuối chương trình, đưa ra thời gian thực hiện: + GV: quan sát và trợ giúp các
time.time() – tb
cặp.





Để cho đẹp: Nên dùng quy cách %.4f để đưa ra
15


Sản phẩm dự kiến

Hoạt động của giáo viên và
học sinh

thời gian thực hiện chương trình với bốn chữ số ở * Bước 3: Báo cáo, thảo
phần thập phân (Hình 3)
luận:
+ HS: Lắng nghe, ghi chú, một
HS phát
biểu lại các tính chất.

+ Các nhóm nhận xét, bổ sung
cho
nhau.
* Bước 4: Kết luận, nhận địn
h: GV
chính xác hóa và gọi 1 học sin
h nhắc lại kiến thức

3. HOẠT ĐỘNG LUYỆN TẬP
a. Mục tiêu: Củng cố, luyện tập kiến thức vừa học.
b. Nội dung: HS đọc SGK làm các bài tập.
c. Sản phẩm: Bài làm của học sinh, kĩ năng giải quyết nhiệm vụ học tập.
d. Tổ chức thực hiện:
Gv Cho HS nhắc lại KT:
Hs: Nhắc lại các vấn đề đã học
Bài 1.
Viết chương trình vẽ một hình chữ nhật bằng các dấu # với một
cạnh có độ dài bằng 10, một cạnh có độ dài bằng a. Ví dụ với a = 4, hình chữ
nhật cần vẽ như hình bên:
Yêu cầu xây dựng một hàm Drawbox với tham số (a), hàm này đưa ra
màn hình các dịng, mỗi dịng chứa 10 dấu # liên tiếp và tham số a quyết định số
dòng sẽ được đưa ra. Chương trình gọi hàm Drawbox(a) với nhập vào từ bàn
phím
16


4. HOẠT ĐỘNG VẬN DỤNG
a. Mục tiêu: Vận dụng các kiến thức vừa học quyết các vấn đề học tập và thực
tiễn.
b. Nội dung:.

c. Sản phẩm: HS vận dụng các kiến thức vào giải quyết các nhiệm vụ đặt ra.
d. Tổ chức thực hiện:
Gv đưa câu hỏi về nhà:
5. Hướng dẫn học sinh tự học:
- Hướng dẫn học bài cũ:
- Hướng dẫn chuẩn bị bài mới:
.................................................................................................................................
........................................
Tên bài dạy
CHỦ ĐỀ F: GIẢI QUYẾT VẤN ĐỀ VỚI SỰ TRỢ GIÚP CỦA MÁY TÍNH
LẬP TRÌNH CƠ BẢN
BÀI 12
KIỂU DỮ LIỆU XÂU KÍ TỰ - XỬ LÍ XÂU
KÍ TỰ
Mơn học: Tin Học; Lớp: 10
Thời gian thực hiện: 2 tiết

I. MỤC TIÊU
1. Kiến thức:


Biết dữ liệu kiểu xâu



Biết cách trích xâu con từ xâu cho trước



Biết các phép xử lí xâu thường dùng

17


2. Năng lực:
- Năng lực chung:
+ Giải quyết được những nhiệm vụ học tập một cách độc lập, theo nhóm và
thể hiện sự sáng tạo.
+ Góp phần phát triển năng lực giao tiếp và hợp tác qua hoạt động nhóm và
trao đổi công việc với giáo viên.
- Năng lực riêng:
+ HS được phát triển tư duy và khả năng giải quyết được vấn đề, năng lực
giao tiếp, hợp tác, sáng tạo, tự chủ và tự học.
3. Phẩm chất: Nghiêm túc, tập trung, tích cực chủ động.
II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU
1. Giáo viên
- Chuẩn bị Bài giảng, máy chiếu, máy chiếu vật thể.
2. Học sinh
- Sách giáo khoa, vở ghi
- Kiến thức đã học
III. TIẾN TRÌNH DẠY HỌC
1. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU)
- Mục tiêu: Tạo hứng thú học tập cho học sinh
- Nội dung: Hs dựa vào hiểu biết để trả lời câu hỏi
- Sản phẩm: Từ yêu cầu Hs vận dụng kiến thức để trả lời câu hỏi GV đưa ra
- Tổ chức thực hiện: GV giới thiệu và dẫn dắt vào bài
? Em đã từng sử dụng phần mềm xử lí văn bản. Theo em, trong ngơn ngữ
lập trình, ngồi kiểu dữ liệu số có cần một kiểu dữ liệu khơng phải là số dùng
cho các bài tốn xử lí văn bản hay khơng? Nếu có kiểu dữ liệu như vậy thì nên
có những phép xử lí nào trên dữ liệu thuộc kiểu đó?
HS: trả lời câu hỏi

2. HÌNH THÀNH KIẾN THỨC MỚI
Hoạt động 1: Tìm hiểu kiểu dữ liệu xâu kí tự
- Mục Tiêu:

+ Biết thế nào là xâu kí tự, cách tạo xâu kí tự
18


- Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu của
GV
- Sản phẩm: Hs hồn thành tìm hiều kiến thức
- Tổ chức thực hiện:

Sản phẩm dự kiến
1. KIỂU DỮ LIỆU XÂU KÍ TỰ

Hoạt động của giáo viên
và học sinh
* Bước 1: Chuyển giao
nhiệm vụ:
GV: Nêu đặt câu hỏi
-

Gợi ý: Có thể dùng hàm type() để kiểm tra kết quả
Khái niệm: Một xâu kí tự là một dãy các kí tự. Trong
Python, xâu kí tự được đặt trong cặp nháy đơn (hoặc
nháy kép)
Ví dụ:

Em hãy đọc chương

trình sau đây và cho
biết mỗi biến số:
so_hop,
khoi_luong_hop,
don_vi_kl chứa dữ
liệu thuộc kiểu nào?

HS: Thảo luận, trả lời
* Bước 2: Thực hiện
nhiệm vụ:
+ HS: Suy nghĩ, tham kh
ảo sgk trả lời câu hỏi
+ GV: quan sát và trợ
giúp các cặp.



Các kí tự trong xâu được đánh số bắt đầu từ 0.



Hàm len() để đếm số kí tự trong một xâu kể cả kí tự
* Bước 3: Báo cáo, thảo
dấu cách
luận:
Số kí tự trong xâu được gọi là độ dài của xâu
+ HS: Lắng nghe, ghi chú
Hình 2 minh họa một chương trình sử dụng hàm
, một HS phát
len() và kiểu dữ liệu xâu kí tự

biểu lại các tính chất.




+ Các nhóm nhận xét, bổ
sung cho
nhau.
* Bước 4: Kết luận, nhậ
n định: GV
19


Hoạt động của giáo viên
và học sinh

Sản phẩm dự kiến



chính xác hóa và g
ọi 1 học sinh nhắc l
ại kiến thức

Hoạt động 2: Tìm hiểu Một số hàm xử lí xâu kí tự
a) Mục tiêu: Nắm được những thành tựu của tin học
b) Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu của
GV.
c) Sản phẩm: HS hồn thành tìm hiểu kiến thức
d) Tổ chức thực hiện:

Sản phẩm dự kiến

Hoạt động của giáo viên và học sinh

2. MỘT SỐ HÀM XỬ LÍ XÂU KÍ
TỰ
* Bước 1: Chuyển giao nhiệm vụ:
Python cung cấp nhiều công cụ để xử lí
xâu. Một số cơng cụ thường dùng là:
GV: Em hãy đọc các chương trình sau đây
• Ghép xâu bằng phép + (Hình 3)
và cho biết kết quả nhận được khi thực hiện
chương trình.
• Đếm số lần xuất hiện xâu con
+ Hàm y.count(x) đếm số lần xuất hiện
không giao nhau của x trong y (Hình 4)
- Đếm số lần xuất hiện xâu con
+ y.count(x, 3) cho biết số lần xuất hiện
các xâu x không giao nhau trong xâu y
nhưng chỉ phạm vi từ kí tự thứ 3 đến kí
tự cuối cùng của xâu y
+ y.count(x, 3, 5) cho biết số lần xuất
hiện các xâu x không giao nhau trong
xâu y nhưng chỉ phạm vi từ kí tự thứ 3 HS: Thảo luận, trả lời
đến kí tự thứ 5 của xâu y
HS: Lấy các ví dụ trong thực tế.
- Xác định xâu con
20



Sản phẩm dự kiến

Hoạt động của giáo viên và học sinh

+ Xác định xâu con của xâu y từ vị trí
m đến trước vị trí n (m < n) ta có cú * Bước 2: Thực hiện nhiệm vụ:
pháp: y[m:n] (Hình 5)
- Chú ý:

+ HS: Suy nghĩ, tham khảo sgk trả lời câu
+ y[:m] là xâu con gồm m kí tự đầu hỏi
tiên của xâu y
+ GV: quan sát và trợ giúp các cặp.
+ y[m:] là xâu con nhận được bằng
cách bỏ m kí tự đầu tiên của xâu y
- Tìm vị trí xuất hiện lần đầu tiên của * Bước 3: Báo cáo, thảo luận:
một xâu trong xâu khác:
+ Hàm y.find(x) trả về số nguyên xác
định vị trí đầu tiên trong xâu y mà từ đó
xâu x xuất hiện như một xâu con của
xâu y. Nếu xâu x không xuất hiện như
một xâu con, kết quả trả về sẽ là -1

+ HS: Lắng nghe, ghi chú, một HS phát
biểu lại các tính chất.
+ Các nhóm nhận xét, bổ sung cho
nhau.

- Thay thế xâu con
+ Hàm y.replace(x1, x2) tạo xâu mới từ * Bước 4: Kết luận, nhận định: GV

xâu y bằng cách thay thế xâu con x1 chính xác hóa và gọi 1 học sinh nhắc lại
của y bằng xâu x2. Tất cả các xâu con kiến thức
bằng x1 và không giao nhau của y đều
được thay bằng xâu x2

3. HOẠT ĐỘNG LUYỆN TẬP
a. Mục tiêu: Củng cố, luyện tập kiến thức vừa học.
b. Nội dung: HS đọc SGK làm các bài tập.
c. Sản phẩm: Bài làm của học sinh, kĩ năng giải quyết nhiệm vụ học tập.
d. Tổ chức thực hiện:
Gv Cho HS nhắc lại KT:
Hs: Nhắc lại các vấn đề đã học

21


Bài 1: Hãy dự đoán kết quả đưa ra màn hình sau mỗi câu lệnh xuất dữ liệu
print() trong chương trình ở hình bên và sau đó dùng cửa sổ Shell để đối chiếu,
kiểm tra từng kết quả dự đoán

4. HOẠT ĐỘNG VẬN DỤNG
a. Mục tiêu: Vận dụng các kiến thức vừa học quyết các vấn đề học tập và thực
tiễn.
b. Nội dung:.
c. Sản phẩm: HS vận dụng các kiến thức vào giải quyết các nhiệm vụ đặt ra.
d. Tổ chức thực hiện:
Gv đưa câu hỏi về nhà:
Bài 2: Em hãy viết chương trình nhập từ bàn phím xâu s ghi ngày tháng dạng
dd/mm/yyyy, trong đó dd là hai kí tự chỉ ngày, mm là hai kí tự chỉ tháng, yyyy là
bốn kí tự chỉ năm. Sau đó đưa ra màn hình ngày, tháng, năm dưới dạng xâu

“Ngày dd tháng mm năm yyyy”.
Ví dụ:
Input

Output

15/12/202
2

Ngày 15 tháng 12
năm 2022

5. Hướng dẫn học sinh tự học:
- Hướng dẫn học bài cũ:
- Hướng dẫn chuẩn bị bài mới:
.................................................................................................................................
............................................
Tên bài dạy
CHỦ ĐỀ F: GIẢI QUYẾT VẤN ĐỀ VỚI SỰ TRỢ GIÚP CỦA MÁY TÍNH
22


LẬP TRÌNH CƠ BẢN
BÀI 13
THỰC HÀNH DỮ LIỆU KIỂU XÂU
Mơn học: Tin Học; Lớp: 10
Thời gian thực hiện: 2 tiết

I. MỤC TIÊU
1. Kiến thức:



Tìm và xóa được kí tự trong xâu



Tách được xâu con, thay thế được xâu con.



Đếm được số lần xuất hiện kí tự cho trước trong xâu

2. Năng lực:
- Năng lực chung:
+ Giải quyết được những nhiệm vụ học tập một cách độc lập, theo nhóm và
thể hiện sự sáng tạo.
+ Góp phần phát triển năng lực giao tiếp và hợp tác qua hoạt động nhóm và
trao đổi công việc với giáo viên.
- Năng lực riêng:
+ HS được phát triển tư duy và khả năng giải quyết được vấn đề, năng lực
giao tiếp, hợp tác, sáng tạo, tự chủ và tự học.
3. Phẩm chất: Nghiêm túc, tập trung, tích cực chủ động.
II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU
1. Giáo viên
- Chuẩn bị Bài giảng, máy chiếu, máy chiếu vật thể.
2. Học sinh
- Sách giáo khoa, vở ghi
- Kiến thức đã học
III. TIẾN TRÌNH DẠY HỌC
23



1. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU)
- Mục tiêu: Tạo hứng thú học tập cho học sinh
- Nội dung: Hs dựa vào hiểu biết để trả lời câu hỏi
- Sản phẩm: Từ yêu cầu Hs vận dụng kiến thức để trả lời câu hỏi GV đưa ra
- Tổ chức thực hiện: GV giới thiệu và dẫn dắt vào bài
2. HÌNH THÀNH KIẾN THỨC MỚI
Hoạt động 1: Tìm hiểu cách xóa kí tự trong xâu
- Mục Tiêu: Rèn Năng lực lập trình
- Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu của
GV
- Sản phẩm: Hs hồn thành tìm hiều kiến thức
- Tổ chức thực hiện:
Sản phẩm dự kiến
BÀI 1: XĨA KÍ TỰ TRONG XÂU

Hoạt động của giáo viên và học sinh
* Bước 1: Chuyển giao nhiệm vụ:

a) Em hãy viết chương trình tạo một GV: Nêu đặt câu hỏi
xâu mới từ xâu s đã cho bằng việc xóa - Để xóa kí tự trong xâu thì ta dùng
những kí tự được chỉ định trước.
hàm nào?
Hướng dẫn: Xóa kí tự tương đương với HS: Thảo luận, trả lời
việc thay kí tự đó bằng kí tự rỗng (Hình
* Bước 2: Thực hiện nhiệm vụ:
1)
b) Em hãy chạy thử chương trình và + HS: Suy nghĩ, tham khảo sgk trả lời
câu hỏi

kiểm tra kết quả
+ GV: quan sát và trợ giúp các cặp.

Ví dụ:
Input

Output

123a45a6a7
8a

123456
78

* Bước 3: Báo cáo, thảo luận:
+ HS: Lắng nghe, ghi chú, một HS phá
t
biểu lại các tính chất.

Hình 1: Chương trình xóa kí tự trong + Các nhóm nhận xét, bổ sung cho
xâu
nhau.
* Bước 4: Kết luận, nhận định: GV


chính xác hóa và gọi 1 học sinh
24


Sản phẩm dự kiến


Hoạt động của giáo viên và học sinh
nhắc lại kiến thức

Hoạt động 2: Tìm và sửa lỗi chương trình
a) Mục tiêu: Phát hiện được lỗi và sửa lỗi chương trình
b) Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu của
GV.
c) Sản phẩm: HS hồn thành tìm hiểu kiến thức
d) Tổ chức thực hiện:
Sản phẩm dự kiến

Hoạt động của giáo viên
và học sinh

BÀI 2: GIÚP BẠN TÌM VÀ SỬA LỖI CHƯƠNG * Bước 1: Chuyển giao
TRÌNH
nhiệm vụ:
Tên tệp thường gồm hai phần: phần tên và phẩn
mở rộng được ngăn cách nhau bởi dấu chấm. Ví dụ, các
tệp chương trình Python có phần mở rộng là “py”, các
tệp văn bản có phần mở rộng là “doc” hoặc “docx”.
Trong hệ điều hành Windows, tên tệp không phân biệt
chữ hoa và chữ thường. Bạn Khánh Linh muốn viết
chương trình (Hình 2) nhập vào một xâu là tên của một
tệp và kiểm tra xem tên tệp đó có phải là tên của tệp
chương trình Python trong hệ điều hành Windows khơng.

GV: Em hãy tìm lỗi sai
trong chương trình Khánh

Linh viết và sửa lại cho
đúng?
HS: Thảo luận, trả lời
HS: Lấy các ví dụ trong
thực tế.
* Bước 2: Thực hiện
nhiệm vụ:



Sai ở chữ Len và hàm fileName[Length – 20:]

Sửa lại:

+ HS: Suy nghĩ, tham khả
o sgk trả lời câu hỏi
+ GV: quan sát và trợ giúp
các cặp.

25


×