32 minute read

TrườngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11

• Danh sách được đặt tên và các phần tử đều được đánh chỉ số

• Các phần tử của List được phân cách nhau ra bởi dấu phẩy (,).

Advertisement

I. MỤC TIÊU

1. Kiến thức

- Hiểu khái niệm list, các thao tác với list.

- Hiểu cách khai báo và truy cập đến các phần tử của list.

2. Năng lực

- Năng lực giải quyết vấn đề, sáng tạo.

- Năng lực tự học, đọc hiểu.

- Năng lực hợp tác nhóm: trao đổi thảo luận, trình bày kết quả

- Năng lực tính toán, Năng lực thực hành .

3. Phẩm chất

- Phẩm chất: Giúp học sinh rèn luyện bản thân phát triển các phẩm chất tốt đẹp: yêu nước, nhân ái, chăm chỉ, trung thực, trách nhiệm

II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU

Giáo viên: Sách giáo khoa, máy tính điện tử

Học sinh: đồ dùng học tập, SGK, vở ghi, máy tính

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

A. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU) a) Mục tiêu: Tạo tình huống khơi gợi tinh thần cho học sinh b) Nội dung: Hs dựa vào hiểu biết để trả lời câu hỏi. c) 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. d) Tổ chức thực hiện: GV giới thiệu và dẫn dắt vào bài:

B. HÌNH THÀNH KIẾN THỨC MỚI a) Mục tiêu: Giúp học sinh biết được khái niệm về list 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:

Hoạt động : Tìm hiểu kiểu dữ liệu danh sách.

Hoạt động của GV và HS Sản phẩm dự kiến

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

* 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 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

I. Kiểu dữ liệu danh sách

Ví dụ: Duy có rất nhiều sách và muốn lập một chương trình quản lý sách.

 Chương trình cần có chức năng:

- Lưu trữ danh sách tên các quyển sách

- Thêm tên một quyển sách vào danh sách

- Hiện tên các quyển sách trong danh sách

=> Ý tưởng là gì?

1) Khái niệm

• Danh sách là một dãy hữu hạn các phần tử (có thể không cùng kiểu)

Ví dụ:

• Được giới hạn bởi cặp ngoặc [ ], tất cả những gì nằm trong đó là những phần tử của List.

2) Cách khởi tạo

Cách 1: Sử dụng cặp dấu ngoặc[] đặt giá trị bên trong

Cú pháp:

[<giá trị thứ nhất>, <giá trị thứ hai>, .., <giá trị thứ n – 1>, <giá trị thứ n>]

Ví dụ: lst = [“Toán học”, “Hình học”, “Tin học”, “Hồn rỗng”] empty_list = [] # khởi tạo list rỗng

Cách 2: Sử dụng List Comprehension (bao quát)

Cú pháp: [Comprehension]

Ví dụ:

>>> a = [kteam for kteam in range(3)]

>>> a

[0, 1, 2]

>>> another_lst = [[n, n * 1, n * 2] for n in range(1, 4)]

>>> another_lst

[[1, 1, 2], [2, 2, 4], [3, 3, 6]]

Ví dụ: Nhập dữ liệu cho List các phần tử cùng kiểu

Cú pháp:

<tênds> = [<kiểu>(<biến chạy>) for <biến chạy> in input().split()]

Trong đó:

<tênds>, <biến chạy>: được đặt theo quy tắc đặt tên biến

<kiểu>: là kiểu int hoặc float tùy vào danh sách nhập vào là số nguyên hay thực

Cách 3: Sử dụng constructor List

Cú pháp: list (iterable)

Lưu ý: iterable là một đối tượng nói chung của các container. (Ta đã được biết hai iterable đó chính là chuỗi, và List).

Ví dụ: >>> lst = list([1, 2, 3])

Ví dụ: ngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11

>>> lst

[1, 2, 3]

>>> str_lst = list('HOWKTEAM')

>>> str_lst

['H', 'O', 'W', 'K', 'T', 'E', 'A', 'M']

>>> list(1)

Traceback (most recent call last): File "<stdin>", line 1, in <%ule>

TypeError: 'int' object is not iterable

* Hàm map()

Cú pháp map(function, iterable 1, iterable 2, ...)

Trong đó:

- function: hàm thực thi cho từng phần tử trong iterable

- iterable: một list, tuple, dictionary … muốn duyệt Ý nghĩa:

- Duyệt tất cả các phần tử của một iterable (list, tuple, dictionary...) qua một hàm cho trước và trả về một list kết quả sau khi thực thi.

- Giá trị trả về từ map() được gọi là map object. Đối tượng này có thể được truyền vào các hàm list() (để tạo list trong Python), hay set() (để tạo một set các phần tử mới)…

4) Đưa danh sách ra màn hình

Cú pháp: for <biến chạy> in <tênds>: print(<biến chạy>)

Hoặc: print(<tênds>)

C. 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 yêu cầu HS:

D. 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: HS sử dụng SGK và vận dụng kiến thức để trả lời câu hỏi. 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:

Viết chương trình nhập dãy N số nguyên (N<=200). In giá trị của phần tử cuối và đầu của dãy số.

* HƯỚNG DẪN VỀ NHÀ:

- Ôn lại bài học hôm nay

- Chuẩn bị trước cho tiết sau.

* RÚT KINH NGHIỆM ngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11

TUẦN 20

TIẾT 22

Ngày soạn: 8/1/2023

Bài 11: KIỂU DANH SÁCH (LIST) (tt)

TrườngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11

* Bước 1: Chuyển giao nhiệm vụ: Giải thích ví dụ rõ để học sinh phân biệt tên kiểu mảng, tên biến mảng.

- Yêu cầu học sinh cho ví dụ về 2 cách khai báo trên.

* Bước 2: Thực hiện nhiệm vụ:

+ HS: Suy nghĩ, tham khảo sgk trả lời câu hỏi

II. Các thao tác trên List trong Python

1) Các phép toán

I. MỤC TIÊU

1. Kiến thức

- Hiểu khái niệm list, các thao tác với list.

- Hiểu cách khai báo và truy cập đến các phần tử của list.

2. Năng lực

- Năng lực giải quyết vấn đề, sáng tạo.

- Năng lực tự học, đọc hiểu.

- Năng lực hợp tác nhóm: trao đổi thảo luận, trình bày kết quả.

- Năng lực tính toán, Năng lực thực hành .

3. Phẩm chất

- Phẩm chất: Giúp học sinh rèn luyện bản thân phát triển các phẩm chất tốt đẹp: yêu nước, nhân ái, chăm chỉ, trung thực, trách nhiệm

II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU

Giáo viên: Sách giáo khoa, máy tính điện tử Học sinh: đồ dùng học tập, SGK, vở ghi, máy tính

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

A. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU) a) Mục tiêu: Tạo tình huống khơi gợi tinh thần cho học sinh b) Nội dung: Hs dựa vào hiểu biết để trả lời câu hỏi. c) 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. d) Tổ chức thực hiện: GV giới thiệu và dẫn dắt vào bài:

B. HÌNH THÀNH KIẾN THỨC MỚI

Hoạt động : Tìm hiểu các thao tác trên List trong Python a) Mục tiêu: Nắm được cách khai báo mảng một chiều 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:

Hoạt động của GV và HS Sản phẩm dự kiế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ổ sung 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

Phép toán Ý nghĩa Ví dụ + Ghép nhiều danh sách thành một

[“Toán học”, “Tin học”]+[“Hóa học”] => [“Toán học”, “Tin học”, “Hóa học”]

* ạo ra một danh sách lặp đi lặp lại xâu gốc với số lần nhân

T

[0, 1]*3=>[0, 1, 0, 1, 0, 1] in

Cho biết một phần tử có xuất hiện trong list hay không, nếu có nhận giá trị True, ngược lại nhận giá trị

“Vật lý” in [“Toán học”, “Tin học”]

 False Hàm len()

False

Trả về số phần tử trong danh sách ds = [“-1”, 0 , 1, 2, “…”]

 len(ds) = 5

2) Đánh chỉ số và các thao tác với chỉ số trong List a) Đánh chỉ số các phần tử trong list: bắt đầu từ 0 đến độ dài list - 1 b) Tham chiếu tới phần tử của list bằng chỉ số đặt trong cặp ngoặc [ và ]

Ví dụ: ds = [“-1”, 0, 1.5, 2, “…”, 123, 23.4, “Tâm”] ds[2] = 1.5 c) Sao chép danh sách: để tạo ra một list mới là đoạn con của list gốc từ chỉ số bắt đầu đến chỉ số dừng – 1 ta viết: tên_list[vị trí bắt đầu:vị trí dừng]

Ví dụ: ds = [“-1”, 0, 1.5, 2, “…”, 123, 23.4, “Tâm”] ds[1:3] = [0, 1.5] d) Thay đổi giá trị phần tử trong danh sách

Ví dụ: ds = [“-1”, 0, 1.5, 2, “…”, 123, 23.4, “Tâm”] ds[0] = “ ” ngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11

=> ds = [“---”, 0, 1.5, 2, “…”, 123, 23.4, “Tâm”] e) Chèn một phần tử vào trong danh sách

Cú pháp:

<List>.insert (i, x)

Ý nghĩa: Thêm phần tử x vào vị trí i trong danh sách f) Sắp xếp danh sách

Cú pháp:

<List>.sort(key=None, reverse=False)

Ý nghĩa: Sắp xếp các phần tử bằng cách so sánh trực tiếp

Chú ý:

• Từ khóa reverse chỉ có thể cho 2 giá trị, một là True, hai là False. Nếu là False, các phần tử được sắp xếp từ bé đến lớn, còn ngược lại là từ lớn đến bé

• Các phần tử trong danh sách phải so sánh được với nhau

Ví dụ: g) Thêm một phần tử vào cuối danh sách

Cú pháp:

<List>.append(x)

Ý nghĩa: Thêm phần tử x vào cuối danh sách

TrườngTHPTChuyênNguyễnDu

TUẦN 21

TIẾT 23

Ngày soạn: 15/1/2023

B I T P

I. MỤC TIÊU

1. Kiến thức

- Hiểu khái niệm list, các thao tác với list.

- Hiểu cách khai báo và truy cập đến các phần tử của list.

2. Năng lực

- Năng lực giải quyết vấn đề, sáng tạo.

- Năng lực tự học, đọc hiểu.

- Năng lực hợp tác nhóm: trao đổi thảo luận, trình bày kết quả.

- Năng lực tính toán, Năng lực thực hành .

3. Phẩm chất

- Phẩm chất: Giúp học sinh rèn luyện bản thân phát triển các phẩm chất tốt đẹp: yêu nước, nhân ái, chăm chỉ, trung thực, trách nhiệm

II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU

Giáo viên: Sách giáo khoa, máy tính điện tử

Học sinh: đồ dùng học tập, SGK, vở ghi, máy tính

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

C. 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 yêu cầu HS: b. Nội dung: HS sử dụng SGK và vận dụng kiến thức để trả lời câu hỏi. 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:

D. 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.

Viết chương trình nhập dãy N số nguyên (N<=200). In giá trị của phần tử cuối và đầu của dãy số

* HƯỚNG DẪN VỀ NHÀ:

- Ôn lại bài học hôm nay

- Chuẩn bị trước cho tiết sau.

* RÚT KINH NGHIỆM .....................................................................................................................................

A. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU) a) Mục tiêu: Tạo tình huống khơi gợi tinh thần cho học sinh b) Nội dung: Hs dựa vào hiểu biết để trả lời câu hỏi. c) 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. d) Tổ chức thực hiện: GV giới thiệu và dẫn dắt vào bài:

B. HÌNH THÀNH KIẾN THỨC MỚI

Hoạt động : Tìm hiểu Bài tập a) Mục tiêu: Nắm được các thao tác trên mảng một chiều 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:

Hoạt động của GV và HS Sản phẩm dự kiến ngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11

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

* 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 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

Bài 1: Hãy cho biết chương trình dưới đây đưa ra màn hình nội dung gì?

TrườngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11 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:

Viết chương trình nhập dãy N số nguyên (N<=200). In giá trị của phần tử cuối và đầu của dãy số

* HƯỚNG DẪN VỀ NHÀ:

- Ôn lại bài học hôm nay

- Chuẩn bị trước cho tiết sau.

* RÚT KINH NGHIỆM .....................................................................................................................................

Bài 2: Viết chương trình đọc vào 7 số thực tương ứng là nhiệt độ lần lượt từ thứ hai đến chủ nhật trong tuần tới, đưa ra màn hình các thông tin sau:

- Các ngày có nhiệt độ dưới 10 độ

- Nhiệt độ thấp nhất, cao nhất trong 7 ngày

Bài 3: Viết chương trình nhập vào số nguyên dương n và n số nguyên dương tương ứng là chiều cao của n bạn. Khi xếp hàng các bạn sẽ đứng theo thứ tự tăng dần theo chiều cao. Em hãy đưa ra màn hình dãy đã sắp xếp để thấy thứ tự xếp hàng của n bạn n=int(input("Nhập vào số nguyên dương n= ")) ls=[] print("Nhập vào chiều cao của",n,"bạn:") for x in range(1,n+1): a=float(input()) ls.append(a) print("Dãy đã sắp xếp theo thứ tự tăng dần của chiều cao ") ls.sort() print(ls)

C. 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 yêu cầu HS:

D. 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: HS sử dụng SGK và vận dụng kiến thức để trả lời câu hỏi. ngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11

TUẦN 21

TIẾT 24

Ngày soạn: 15/1/2023

Bài tập và thực hành 3

DỮ LIỆU KIỂU DANH SÁCH

I. MỤC TIÊU

1. Về kiến thức:

- Củng cố các kiến thức về: Kiểu dữ liệu danh sách, lệnh lặp, lệnh rẽ nhánh.

2. Năng lực

- Năng lực giải quyết vấn đề, sáng tạo.

- Năng lực tự học, đọc hiểu.

- Năng lực hợp tác nhóm: trao đổi thảo luận, trình bày kết quả.

- Năng lực tính toán, Năng lực thực hành .

3. Phẩm chất

- Phẩm chất: Giúp học sinh rèn luyện bản thân phát triển các phẩm chất tốt đẹp: yêu nước, nhân ái, chăm chỉ, trung thực, trách nhiệm

II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU

Giáo viên: Sách giáo khoa, máy tính điện tử

Học sinh: đồ dùng học tập, SGK, vở ghi, máy tính

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

A. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU) a) Mục tiêu: Tạo tình huống khơi gợi tinh thần cho học sinh b) Nội dung: Hs dựa vào hiểu biết để trả lời câu hỏi. c) 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. d) Tổ chức thực hiện: GV giới thiệu và dẫn dắt vào bài: nhắc lại nội dung kiến thức.

B. HÌNH THÀNH KIẾN THỨC MỚI

Hoạt động 1: Củng cố nội dung lý thuyết qua bài tập a) Mục tiêu: Củng cố nội dung lý thuyết 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:

Hoạt động của GV và HS Sản phẩm dự kiến

* Bước 1: Chuyển giao nhiệm vụ: Yêu cầu HS hãy nêu 2 cách để khai báo mảng?

Hãy giải thích các đại lượng?

Cách tham chiếu đến phần tử của mảng?

Cách nhập dữ liệu?

Cách in dữ liệu?

* 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:

Bài 1:

Viết chương trình nhập vào 12 số nguyên dương tương ứng là tiền điện của 12 tháng năm vừa rồi của nhà em, đưa ra màn hình các thông tin sau:

- Tổng số tiền điện của cả năm, trung bình mỗi tháng

- Liệt kê các tháng dung nhiều hơn trung bình mỗi tháng print("Nhập vào tiền điện của 12 tháng trong năm") ls=[] for x in range(1,13): a=int(input()) ls.append(a)

TrườngTHPTChuyênNguyễnDu Kế hoạchbàidạ

+ 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 định: GV chính xác hóa và gọi 1 học sinh nhắc lại kiến thức print("Tổng số tiền điện của cả năm ") t=0 for x in range(0,12): t=t+ls[x] print(t) print("TB mỗi tháng",t/12) print("Các tháng dùng nhiều hơn TB") for x in range(0,12): if ls[x]>t/12: print(ls[x],end=' ')

C. 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:

Cấu trúc lệnh: While ... do ... và For ... do ...

D. 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: HS sử dụng SGK và vận dụng kiến thức để trả lời câu hỏi. 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 chia lớp thành nhiều nhóm và giao các nhiệm vụ: thảo luận trả lời các câu hỏi và bài tập vận dụng.

* HƯỚNG DẪN VỀ NHÀ: - Ôn lại bài học hôm nay - Chuẩn bị trước cho tiết sau.

* RÚT KINH NGHIỆM ngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11

TUẦN 22

TIẾT 25

Ngày soạn: 28/1/2023

B I T P V Th C H Nh 3

I. MỤC TIÊU

1. Về kiến thức:

- Củng cố các kiến thức về: Kiểu dữ liệu danh sách, lệnh lặp, lệnh rẽ nhánh.

2. Năng lực

- Năng lực giải quyết vấn đề, sáng tạo.

- Năng lực tự học, đọc hiểu.

- Năng lực hợp tác nhóm: trao đổi thảo luận, trình bày kết quả.

- Năng lực tính toán, Năng lực thực hành .

3. Phẩm chất

- Phẩm chất: Giúp học sinh rèn luyện bản thân phát triển các phẩm chất tốt đẹp: yêu nước, nhân ái, chăm chỉ, trung thực, trách nhiệm

II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU

Giáo viên: Sách giáo khoa, máy tính điện tử

Học sinh: đồ dùng học tập, SGK, vở ghi, máy tính

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

A. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU) a) Mục tiêu: Tạo tình huống khơi gợi tinh thần cho học sinh b) Nội dung: Hs dựa vào hiểu biết để trả lời câu hỏi. c) 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. d) Tổ chức thực hiện: GV giới thiệu và dẫn dắt vào bài: nhắc lại nội dung kiến thức.

B. HÌNH THÀNH KIẾN THỨC MỚI

Hoạt động : Giải bài tập số 2 a) Mục tiêu: Giải bài tập số 5 trang 79 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:

Hoạt động của GV và HS Sản phẩm dự kiến

TrườngTHPTChuyênNguyễnDu

* Bước 1: Chuyển giao nhiệm vụ:yêu cầu làm bài tập số 5 trang 79

* 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 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

Bài 2:

Như chúng ta đã biết, các phần tử trong danh sách không nhất thiết phải cùng kiểu, mỗi phần tử có thể thuộc kiểu số hoặc kiểu xâu thậm chí là kiểu danh sách. a) Hãy tìm hiểu chương trình và giải thích kết quả ra màn hình b) Hãy tìm hiểu them dữ liệu về tên và diện tích của 3 quốc gia khác và thêm vào danh sách, hiện danh sách sau khi thêm c) Liệt kê tên các quốc gia có diện tích lớn hơn một triệu km2

Chương trình dưới đây sử dụng dữ liệu về tên và diện tích (đơn vị km2) của các quốc gia. Mỗi phần tử của biến danh sách countryList là một danh sách, trong danh sách đó mỗi phần tử là kiểu xâu hoặc là số nguyên hoặc là số thực.

Bài 2: chương trình câu a

Chương trình câu a, b, c: cn=[["Hoa Kỳ",9525067],["Nga",17098246],["Việt Nam",331212]] print(cn[2]) cn.insert(2,["Singapore",752.7]) print(cn) for x in range(len(cn)): print(cn[x][0])

# câu b cn.insert(2,["Đức",357022]) cn.insert(2,["Canada",9984670]) cn.insert(2,["Pháp",643801]) print(cn) ngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11

# câu c print("Các quốc gia có diện tích lớn hơn 1 triệu km2 là:") for x in range(len(cn)): if cn[x][1]>1000000: print(cn[x])

C. 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:

Cấu trúc lệnh: While ... do ... và For ... do ...

D. 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: HS sử dụng SGK và vận dụng kiến thức để trả lời câu hỏi. 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 chia lớp thành nhiều nhóm và giao các nhiệm vụ: thảo luận trả lời các câu hỏi và bài tập vận dụng.

* HƯỚNG DẪN VỀ NHÀ:

- Ôn lại bài học hôm nay

- Chuẩn bị trước cho tiết sau.

* RÚT KINH NGHIỆM

TrườngTHPTChuyênNguyễnDu Kế hoạchbàid

TUẦN 22

TIẾT 26

Ngày soạn: 28/1/2023

B I T P V Th C H Nh 4

I. MỤC TIÊU

1. Kiến thức

- Củng cố kiến thức về dữ liệu kiểu danh sách.

- Xây dựng cấu trúc dữ liệu, thuật toán giải bài toán đơn giản.

2. Năng lực

- Năng lực giải quyết vấn đề, sáng tạo.

- Năng lực tự học, đọc hiểu.

- Năng lực hợp tác nhóm: trao đổi thảo luận, trình bày kết quả.

- Năng lực tính toán, Năng lực thực hành .

3. Phẩm chất

- Phẩm chất: Giúp học sinh rèn luyện bản thân phát triển các phẩm chất tốt đẹp: yêu nước, nhân ái, chăm chỉ, trung thực, trách nhiệm

II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU

Giáo viên: Sách giáo khoa, máy tính điện tử

Học sinh: đồ dùng học tập, SGK, vở ghi, máy tính

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

A. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU) a) Mục tiêu: Tạo tình huống khơi gợi tinh thần cho học sinh b) Nội dung: Hs dựa vào hiểu biết để trả lời câu hỏi. c) 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. d) Tổ chức thực hiện: GV giới thiệu và dẫn dắt vào bài:

B. HÌNH THÀNH KIẾN THỨC MỚI a) Mục tiêu: Nhắc lại kiến thức đã học liên quan bài thực hà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:

Hoạt động 1: Tìm hiểu dãy số Fibonacci.

Hoạt động của GV và HS Sản phẩm dự kiến

* Bước 1: Chuyển giao nhiệm vụ: Nêu cách khai báo kiểu mảng 1 chiều.

Nhập từ bàn phím xây dựng mảng một chiều A có

6 phần 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 cho nhau.

Bài 1:

Dãy Fibonacci là dãy số nguyên dương được định nghĩa như sau: f1 = f2 = 1, ∀ i : 3 ≤ i : fi = fi-1

+ fi-2

Viết chương trình tìm phần tử thứ n (n <= 100) của dãy Fibonacci có sử dụng mảng ngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11

* 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

100 354224848179261915075 n=int(input("Nhập n = ")) f=[1,1] for x in range(1,n-1): f.append(f[x]+f[x-1]) print("Phần tử thứ ",n,"=",f[n-1]) a) Đếm số lượng các số nguyên tố trong dãy trên có sử dụng hàm kiểm tra một số là số nguyên tố b) Tìm ước chung lớn nhất của a1, a2, …, an import math def nt(k): if k==1: return False else: i=2 while

Bài 2: Nhập vào số nguyên dương n <= 105 và dãy các số nguyên dương a1, a2, …, an.

(i<=math.trunc(k**0.5))&(k%i!=0): i=i+1 if i>math.trunc(k**0.5): return True else: return False n=int(input("Nhập n = ")) a=[] for x in range(n): a.append(int(input())) dem=0 for x in range(0,n): if nt(a[x]): dem=dem+1 print("Số lượng số nguyên tố =",dem)

# câu b def ucln(x,y): r=x%y while r!=0: x=y y=r r=x%y return y for i in range(0,n-1): u=ucln(a[i+1],a[i]) print("UCLN=",u)

TrườngTHPTChuyênNguyễnDu 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. ạyTinhọc11 d. Tổ chức thực hiện: Bài 7: Cho mảng A gồm các số nguyên a0, a1, …, an (n <= 1000). Hãy sắp xếp lại mảng A sao cho a0 ≤ a1 ≤ … ≤ an

D. 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: HS sử dụng SGK và vận dụng kiến thức để trả lời câu hỏi. 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 chia lớp thành nhiều nhóm và giao các nhiệm vụ: thảo luận trả lời các câu hỏi và bài tập vận dụng.

* HƯỚNG DẪN VỀ NHÀ:

- Ôn lại bài học hôm nay

- Chuẩn bị trước cho tiết sau.

* RÚT KINH NGHIỆM ngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11

TUẦN 23

TIẾT 27

Ngày soạn: 4/2/2023

BÀI TẬP VÀ THỰC HÀNH 4 (TIẾP)

I. MỤC TIÊU

1. Kiến thức

- Củng cố kiến thức về dữ liệu kiểu danh sách.

- Xây dựng cấu trúc dữ liệu, thuật toán giải bài toán đơn giản.

2. Năng lực

- Năng lực giải quyết vấn đề, sáng tạo.

- Năng lực tự học, đọc hiểu.

- Năng lực hợp tác nhóm: trao đổi thảo luận, trình bày kết quả.

- Năng lực tính toán, Năng lực thực hành .

3. Phẩm chất

- Phẩm chất: Giúp học sinh rèn luyện bản thân phát triển các phẩm chất tốt đẹp: yêu nước, nhân ái, chăm chỉ, trung thực, trách nhiệm

II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU

Giáo viên: Sách giáo khoa, máy tính điện tử Học sinh: đồ dùng học tập, SGK, vở ghi, máy tính

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

A. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU) a) Mục tiêu: Tạo tình huống khơi gợi tinh thần cho học sinh b) Nội dung: Hs dựa vào hiểu biết để trả lời câu hỏi. c) 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. d) Tổ chức thực hiện: GV giới thiệu và dẫn dắt vào bài:

B. HÌNH THÀNH KIẾN THỨC MỚI a) Mục tiêu: Xác định bài toán và tìm hiểu 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 hoàn thành tìm hiểu kiến thức d) Tổ chức thực hiện:

Hoạt động 1: Tìm hiểu và giải bài toán 3.

Hoạt động của GV và HS Sản phẩm dự kiến

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

1. Chiếu đề bài lên bảng.

2. Xác định bài toán

Y/cầu hs xác định dữ liệu vào/ra của bài toán?

Tìm hiểu chương trình

* 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 cho nhau.

Bài 3: Nhập vào số nguyên dương n <= 1018 , chuyển đổi số nguyên dương n sang hệ nhị phân có sử dụng mảng n=int(input("Nhập n = ")) a=[] while n//2!=0: a.append(n%2) n=n//2 a.append(n%2) print("Dãy nhị phân là:") for x in range(len(a)-1,-1,-1): print(a[x],end='')

TrườngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11

* 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 Bài 4: Viết chương trình nhập số nguyên dương n, số nguyên dương v (n <= 105, v ≠ 0) và dãy các số nguyên A = {a1, a2, …, an}. Cho biết v có xuất hiện trong dãy A không? Nếu có cho biết vị trí xuất hiện đầu tiên của v trong A n=int(input("Nhập n = ")) v=int(input("Nhập v = ")) print("Nhập dãy a gồm",n,"số:") a=[] for x in range(0,n): a.append(int(input())) i=0 while i <len(a): if a[i]==v: print("YES","vị trí",i+1) break else: i=i+1 if i>len(a)-1: print("NO")

Hoạt động 2: Tìm hiểu Chạy CT bài 5 a) Mục tiêu: Chạy CT 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: Hoạt động của GV và HS Sản phẩm dự kiến

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

Yêu cầu hs tự nhập dữ liệu với CT có sẵn. Xác định bài toán.

- Y/cầu hs xác I/O bài toán?

- Yêu cầu hs sửa lại CT theo gợi ý đã nêu

* 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 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

Bài 5: Cho dãy A = {a0, a1, …, an}và số nguyên i (n <= 105, 0 ≤ i ≤ n). Tìm cách xóa các phần tử ai sao cho dãy số sau khi xóa các phần tử còn lại vẫn giữ nguyên thứ tự n=int(input("Nhập n = ")) i=int(input("Nhập i = ")) print("Nhập dãy a[0..n] gồm",n+1,"số:") a=[] for x in range(0,n+1): a.append(float(input()))

# cách 1 b=[] for x in range(len(a)): if a[x]!=a[i]: b.append(a[x]) print(b)

Cách 2: ngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11 n=int(input("Nhập n = ")) i=int(input("Nhập i = ")) print("Nhập dãy a[0..n] gồm",n+1,"số:") a=[] for x in range(0,n+1): a.append(float(input()))

# cách 2 a.pop(i) # lấy p.tử a[i] ra khỏi list rồi xóa nó tại vị trí i print(a)

Bài 6: Cho dãy số nguyên A = {a0, a1, …, an}và chỉ số i, giá trị v (n <= 105, 0 ≤ i ≤ n). Tìm cách chèn phần tử v vào trước ai sao cho vẫn giữ nguyên thứ tự các phần tử còn lại n=int(input("Nhập n = ")) i=int(input("Nhập chỉ số i = ")) v=int(input("Nhập v = ")) print("Nhập dãy a[0..n] gồm",n+1,"số:") a=[] for x in range(0,n+1): a.append(int(input())) a.insert(i,v) # chèn v vào vị trí i trong danh sách a print(a)

TrườngTHPTChuyênNguyễnDu

TUẦN 23

TIẾT 28

Ngày soạn: 4/2/2023

Bài 12: KIỂU XÂU

I. MỤC TIÊU

1. Về kiến thức

- Biết được một kiểu dự liệu mới, biết được khái niệm kiểu xâu.

- Phân biệt được sự giống và khác giữa kiểu mảng với kiểu xâu.

- Biết được cách khai báo biến, nhập/xuất dữ liệu, tham chiếu dến từng kí tự của xâu.

- Biết các phép toán liên quan đến xâu.

2. Năng lực

- Năng lực giải quyết vấn đề, sáng tạo.

- Năng lực tự học, đọc hiểu.

- Năng lực hợp tác nhóm: trao đổi thảo luận, trình bày kết quả.

- Năng lực tính toán, Năng lực thực hành .

3. Phẩm chất

- Phẩm chất: Giúp học sinh rèn luyện bản thân phát triển các phẩm chất tốt đẹp: yêu nước, nhân ái, chăm chỉ, trung thực, trách nhiệm

II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU

Giáo viên: Sách giáo khoa, máy tính điện tử

C. 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:

Bài 7:

Cho mảng A gồm các số nguyên a0, a1, …, an (n <= 1000). Hãy sắp xếp lại mảng A sao cho a0 ≤ a1 ≤ … ≤ an

D. 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: HS sử dụng SGK và vận dụng kiến thức để trả lời câu hỏi. 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 chia lớp thành nhiều nhóm và giao các nhiệm vụ: thảo luận trả lời các câu hỏi và bài tập vận dụng.

* HƯỚNG DẪN VỀ NHÀ:

- Ôn lại bài học hôm nay

- Chuẩn bị trước cho tiết sau.

* RÚT KINH NGHIỆM

Học sinh: đồ dùng học tập, SGK, vở ghi, máy tính

III. TIẾN TRÌNH DẠY HỌC A. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU) a) Mục tiêu: Tạo tình huống khơi gợi tinh thần cho học sinh b) Nội dung: Hs dựa vào hiểu biết để trả lời câu hỏi. c) 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. d) Tổ chức thực hiện: GV giới thiệu và dẫn dắt vào bài:

- Bài toán đặt vấn đề: Nhập vào họ tên của 1 học sinh từ bàn phím, in kết quả ra màn hình.

- Nếu bài toán yêu cầu nhập vào họ tên của 5 học sinh, thì ta sẽ phải tạo 5 mảng để lưu họ tên của 5 học sinh. Vậy nếu là 20, 50 học sinh thì sẽ mất thời gian.

- NNLT Python đưa ra một kiểu dữ liệu mới : Kiểu xâu

B. HÌNH THÀNH KIẾN THỨC MỚI a) Mục tiêu: Nắm được về xâu và quy ước về xâu 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: Hoạt động của GV và HS Sản phẩm dự kiến

Hoạt động 1: Tìm hiểu về xâu và quy ước về xâu.

* Bước 1: Chuyển giao nhiệm vụ: Xét bài toán dịch từ ngôn ngữ tiếng Anh sang ngôn ngữ tiếng Việt

Input: ?

Output: ?

I. Dữ liệu kiểu xâu

1. Khái niệm: - Xâu là dãy các kí tự trong bảng mã Unicode và được đặt trong cặp dấu nháy đơn hoặc dấu nháy kép

- 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

- Đưa ra một ví dụ minh hoạ. Sau đó yêu cầu học sinh tìm hiểu và trả lời về định nghĩa xâu?

VD: 'tin hoc' '2014' 'THPT Hang Hai?'

GV hỏi HS đọc SGK trả lời

- Độ dài xâu được xác định ntn?

- Xâu rỗng là xâu ntn?

- Chỉ số phần tử được đánh ntn?

- Cách tham chiếu đến một phần tử của xâu ntn?

GV đưa ra 3 VD yêu cầu HS quan sát, nhận xét và trả lời

+ 'Tin hoc' là xâu có độ dài bằng bao nhiêu?

+ ' ' là xâu gì?

+ Giả sử biến xâu hoten lưu giá trị hằng xâu 'Le Thu Ha' muốn tham chiếu đến kí tự 'T' thì viết ntn?

* 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 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 a) Mục tiêu: Nắm được

Hoạt động 2: Tìm hiểu các thao tác xử lí xâu.

- Xâu có độ dài bằng 0 là xâu rỗng b) Ví dụ: - Xâu “I am a robot” có độ dài 12

- Xâu “Tôi là người máy” có độ dài 16

2) Cách tạo một biến kiểu xâu

Cách 1: Dùng lệnh gán:

Ví dụ: E = “I am a robot”

Cách 2: <Tên biến> = input()

Ví dụ: s = input(“Nhập vào 1 xâu từ bàn phím)

TrườngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11 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: Hoạt động của GV và HS Sản phẩm dự kiến

* Bước 1: Chuyển giao nhiệm vụ: GV: đưa ra cú pháp của phương pháp khai báo biến xâu, sau đó lấy ví dụ minh hoạ và yêu cầu HS nhận xé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 cho nhau.

II. Các thao tác xử lý xâu

1) Các phép toán a) Phép ghép xâu: kí hiệu là dấu (+) dùng để ghép nhiều xâu thành 1 xâu b) Phép nhân xâu (*) tạo ra một xâu lặp đi lặp lại xâu gốc với số làn nhân

Ví dụ: “Tâm” * 3 => “Tâm tinTâm tinTâm tin” c) Phép so sánh: ==, != (khác), <, >, >=,<= được thực hiện theo quy tắc:

• Xâu A > xâu B nếu kí tựđầu tiên khác nhau giữa chúng kể từ trái sang phải trong xâu A

* 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 có mã lớn hơn (trong bảng mã Unicode 16 bit)

• Ví dụ: “Tin học” < “Toán học”

• Xâu A và B có độ dài khác nhau và B là phần đầu của A thì A lớn hơn B

• Ví dụ “Tin học” > “Tin”

• Hai xâu bằng nhau nếu chúng giống hoàn toàn d) Phép toán in: cho biết xâu thứ nhất có xuất hiện trong xâu thứ 2 hay không? Có là True, ngược lại là False

Ví dụ:

“học” in “Tin học” =>True

“họcTin” in “Tin học” * 3 =>True

“TIN” in “Tin học” =>False

2. Đánh chỉ số và các thao tác với chỉ số trong xâu a) Đánh chỉ số các kí tự trong xâu: bắt đầu từ 0 đến độ dài xâu - 1 b) Tham chiếu tới phần tử xâu: tên_xâu[chỉ số] c) Sao chép xâu: tên_xâu[vị trí bắt đầu:vị trí dừng] Tạo một xâu mới là đoạn con của xâu gốc từ vị trí bắt đầu đến vị trí dừng - 1

S = “Hoàng Thanh Tâm”

S[1] = “o” s = S[6:11] = “Thanh”

C. 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:

D. 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: HS sử dụng SGK và vận dụng kiến thức để trả lời câu hỏi. 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 chia lớp thành nhiều nhóm và giao các nhiệm vụ: thảo luận trả lời các câu hỏi và bài tập vận dụng.

Hãy khai báo các biến xâu: hoten, st1, st2, st3 với độ dài xâu lớn nhất tương ứng là 260, 255, 0, 45.

Hãy nêu sự giống và khác nhau giữa mảng một chiều và xâu Xem trước một số hàm và làm việc với xâu và các ví dụ trang 71,72 trong SGK

* HƯỚNG DẪN VỀ NHÀ:

- Ôn lại bài học hôm nay

- Chuẩn bị trước cho tiết sau.

TrườngTHPTChuyênNguyễnDu Kế hoạchbàidạyTinhọc11

* RÚT KINH NGHIỆM

TrườngTHPTChuyênNguyễnDu

TUẦN 24

TIẾT 29

Ngày soạn: 11/2/2023

BÀI 12: KIỂU XÂU (tt) ế hoạchbàidạyTinhọc11

I. MỤC TIÊU

1. Về kiến thức

- Biết được một kiểu dự liệu mới, biết được khái niệm kiểu xâu.

- Phân biệt được sự giống và khác giữa kiểu mảng với kiểu xâu.

- Biết được cách khai báo biến, nhập/xuất dữ liệu, tham chiếu dến từng kí tự của xâu.

- Biết các phép toán liên quan đến xâu.

2. Năng lực

- Năng lực giải quyết vấn đề, sáng tạo.

- Năng lực tự học, đọc hiểu.

- Năng lực hợp tác nhóm: trao đổi thảo luận, trình bày kết quả.

- Năng lực tính toán, Năng lực thực hành .

3. Phẩm chất

- Phẩm chất: Giúp học sinh rèn luyện bản thân phát triển các phẩm chất tốt đẹp: yêu nước, nhân ái, chăm chỉ, trung thực, trách nhiệm

II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU

Giáo viên: Sách giáo khoa, máy tính điện tử

Học sinh: đồ dùng học tập, SGK, vở ghi, máy tính

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

A. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU) a) Mục tiêu: Tạo tình huống khơi gợi tinh thần cho học sinh b) Nội dung: Hs dựa vào hiểu biết để trả lời câu hỏi. c) 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. d) Tổ chức thực hiện: GV giới thiệu và dẫn dắt vào bài:

- Bài toán đặt vấn đề: Nhập vào họ tên của 1 học sinh từ bàn phím, in kết quả ra màn hình.

- Nếu bài toán yêu cầu nhập vào họ tên của 5 học sinh, thì ta sẽ phải tạo 5 mảng để lưu họ tên của 5 học sinh. Vậy nếu là 20, 50 học sinh thì sẽ mất thời gian.

- NNLT Python đưa ra một kiểu dữ liệu mới : Kiểu xâu

B. HÌNH THÀNH KIẾN THỨC MỚI a) Mục tiêu: Nắm đượ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 hoàn thành tìm hiểu kiến thức d) Tổ chức thực hiện:

Hoạt động 1: Tìm hiểu các thao tác xử lí xâu.

Hoạt động của GV và HS Sản phẩm dự kiến

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

GV: đưa ra cú pháp của phương pháp khai báo biến xâu, sau đó lấy ví dụ minh hoạ và yêu cầu HS nhận xé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.

II. Các thao tác xử lý xâu

3. Một số hàm, thủ tục trên xâu a) Hàm len(): trả về độ dài xâu b) Hàm str(): chuyển đổi dữ liệu ở dạng số sang dạng xâu

Ví dụ: str(21) => “21” str(34.21) => “34.21”

This article is from: