Giáo án chuyên đề Khoa học máy tính 12 chân trời Bài 1.4: Ứng dụng của ngăn xếp

Giáo án giảng dạy theo sách Chuyên đề học tập Tin học 12 - Định hướng Khoa học máy tính bộ sách Chân trời sáng tạo Bài 1.4: Ứng dụng của ngăn xếp. Bộ giáo án giúp giáo viên hướng dẫn học sinh mở rộng kiến thức, phát triển năng lực, nâng cao khả năng định hướng nghề nghiệp cho các em sau này. Thao tác tải về rất đơn giản, tài liệu file word có thể chỉnh sửa dễ dàng. Mời quý thầy cô tham khảo bài soạn.

Xem: => Giáo án Tin học 12 - Định hướng Khoa học máy tính chân trời sáng tạo

Xem toàn bộ: Giáo án chuyên đề Khoa học máy tính 12 chân trời sáng tạo đủ cả năm

Ngày soạn:…/…/…

Ngày dạy:…/…/…

 

BÀI 1.4: ỨNG DỤNG CỦA NGĂN XẾP

(3 tiết)

I. MỤC TIÊU

1. Kiến thức

Sau bài học này, HS sẽ:

  • Trình bày và minh hoạ được một số ứng dụng ngăn xếp.

  • Viết được một chương trình đơn giản để hiểu rõ ứng dụng của ngăn xếp.

2. Năng lực

Năng lực chung:

  • Tự chủ và tự học: Chủ động, tích cực thực hiện công việc của cá nhân.

  • Giao tiếp và hợp tác: Phân tích được các công việc cần thực hiện để hoàn thành nhiệm vụ của nhóm trong các hoạt động nhóm.

  • Giải quyết vấn đề và sáng tạo: Nêu được nhiều ý tưởng mới trong học tập, suy nghĩ không theo lối mòn, tạo ra yếu tố mới dựa trên những ý tưởng khác nhau.

Năng lực Tin học:

  • NLa và NLc: Hiểu được một số ứng dụng của hàng đợi.

3. Phẩm chất

  • Chăm chỉ: Tích cực tìm tòi, sáng tạo trong việc học tập.

  • Trách nhiệm: Tích cực, tự giác, nghiêm túc rèn luyện trong việc giải thích và viết chương trình cho các phép toán cơ bản của hàng đợi.

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

1. Đối với giáo viên:

  • Máy chiếu, máy tính, màn hình hiển thị, hoặc ti vi.

  • SGK, SGV Chuyên đề học tập Tin học 12 – Định hướng Khoa học máy tính – Chân trời sáng tạo.

2. Đối với học sinh:

  • Các dụng cụ học tập theo yêu cầu của GV; SGK Chuyên đề học tập Tin học 12 – Định hướng Khoa học máy tính – Chân trời sáng tạo.

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

A. HOẠT ĐỘNG KHỞI ĐỘNG

a. Mục tiêu: Khơi gợi và tạo hứng thú để HS muốn tìm hiểu về ứng dụng của ngăn xếp.

b. Nội dung: GV yêu cầu HS làm việc cá nhân, suy nghĩ trả lời câu hỏi ở hoạt động Khởi động SGK tr.18. 

c. Sản phẩm học tập: Cách kiểm tra tính hợp lệ của dấu ngoặc.

d. Tổ chức thực hiện:

Bước 1: GV chuyển giao nhiệm vụ học tập

- GV yêu cầu HS đọc hoạt động Khởi động SGK tr.18, suy nghĩ và trình bày ý tưởng:

Cho biết cách trình bày cách để kiểm tra số dấu mở ngoặc và số dấu đóng ngoặc tương ứng trong chuỗi "(((){[]}))" có bằng nhau hay không.

Bước 2: HS thực hiện nhiệm vụ học tập

- HS suy nghĩ hoàn thành nhiệm vụ học tập.

- GV quan sát, theo dõi và hỗ trợ HS khi cần thiết.

Bước 3: Báo cáo kết quả hoạt động và thảo luận

- GV mời một số HS xung phong trình bày câu trả lời.

HS khác lắng nghe, nhận xét và bổ sung.

Gợi ý trả lời:

Có thể kiểm tra tính hợp lệ của dấu ngoặc dựa trên ngăn xếp bằng cách kiểm tra chuỗi dấu ngoặc đơn giản "(((){[]}))". Nếu gặp dấu ngoặc mở thì thêm vào ngăn xếp, nếu gặp dấu đóng ngoặc thì lấy dấu ngoặc mở ở đỉnh ra khỏi ngăn xếp. Nếu sau quá trình trên, ngăn xếp rỗng thì chuỗi dấu ngoặc hợp lệ.

Bước 4: Đánh giá kết quả, thực hiện nhiệm vụ học tập

GV đánh giá kết quả của HS, dẫn dắt HS vào bài học mới: Ngoài hàng đợi, ngăn xếp cũng được ứng dụng để giải quyết nhiều vấn đề. Để giúp các em trình bày được một số ứng dụng của ngăn xếp, đồng thời viết được một chương trình đơn giản để hiểu rõ ứng dụng của kiểu dữ liệu này, chúng ta sẽ cùng nhau đến với Bài 1.4: Ứng dụng của ngăn xếp.

B. HOẠT ĐỘNG HÌNH THÀNH KIẾN THỨC

Hoạt động 1. Một số ứng dụng của ngăn xếp

a. Mục tiêu: 

- Giúp HS biết được phạm vi ứng dụng của ngăn xếp trong các vấn đề thực tiễn như cơ chế hoàn tác hay làm lại, lịch sử duyệt web,…

- Từ đó, GV hướng dẫn HS trình bày và minh hoạ được một số ứng dụng của ngăn xếp.

b. Nội dung: GV giao nhiệm vụ; HS tìm hiểu nội dung mục 1. Một số ứng dụng của ngăn xếp để thực hiện nhiệm vụ.

c. Sản phẩm: Một số ứng dụng của ngăn xếp.

d. Tổ chức thực hiện:

HOẠT ĐỘNG CỦA GV - HS

DỰ KIẾN SẢN PHẨM

Bước 1: GV chuyển giao nhiệm vụ học tập

- GV yêu cầu HS hoạt động cá nhân và trả lời các câu hỏi:

+ Cơ chế hoạt động của ngăn xếp là gì? 

+ Em hãy nêu một số ứng dụng của ngăn xếp mà em biết?

- GV chia lớp thành 4 nhóm học tập, mỗi nhóm tìm hiểu về một ứng dụng phổ biến của ngăn xếp:

+ Em hãy trình bày và minh hoạ một số ứng dụng phổ biến của ngăn xếp. Phân tích ví dụ minh hoạ của mỗi ứng dụng.

-  GV yêu cầu HS vận dụng kiến thức vừa tìm hiểu, thực hiện hoạt động Làm SGK tr.22:

Em hãy minh hoạ:

a) Kiểm tra tính hợp lệ của dấu ngoặc trong chuỗi [2 * (4 + 3)  5] bằng cách sử dụng ngăn xếp.

b) Chuyển biểu thức (1  4) * 2 + 7 sang dạng hậu tố bằng cách sử dụng ngăn xếp.

Bước 2: HS thực hiện nhiệm vụ học tập

- HS tìm hiểu nội dung mục 1 SGK tr.18 – 22 và trả lời các câu hỏi mà GV đưa ra.

- GV quan sát và trợ giúp HS (nếu cần thiết).

Bước 3: Báo cáo kết quả hoạt động và thảo luận

- HS lần lượt trả lời các câu hỏi.

- Đại diện các nhóm HS trình bày kết quả thảo luận.

- HS khác nhận xét, bổ sung. 

Bước 4: Đánh giá kết quả, thực hiện nhiệm vụ học tập

- Từ nội dung trả lời, thảo luận của HS, GV nhận xét, đánh giá quá trình HS thực hiện nhiệm vụ.

- GV chính xác hoá lại các nội dung kiến thức.

- GV chốt kiến thức theo hoạt động Ghi nhớ:

  • Một số ứng dụng phổ biến của ngăn xếp là: kiểm tra tính hợp lệ của dấu ngoặc trong biểu thức; tính giá trị biểu thức số học,...

  • Ngăn xếp cũng được ứng dụng trong các vấn đề thực tiễn như cơ chế hoàn tác hay làm lại, lịch sử duyệt web,...

1. Một số ứng dụng của ngăn xếp

- Ngăn xếp hoạt động theo cơ chế LIFO (Last In, First Out) – vào sau ra trước.

- Ngăn xếp được ứng dụng trong:

+ Tác vụ hoàn tác/làm lại.

Ví dụ: Chức năng Undo khi soạn thảo văn bản.

+ Lịch sử duyệt web trong các ứng dụng.

+ Giải quyết một số bài toán như tính giá trị của biểu thức số học, kiểm tra dấu ngoặc.

+ Theo dõi quá trình thực hiện của thuật toán quay lui, khử đệ quy,…

- Một số ứng dụng phổ biến của ngăn xếp:

Kiểm tra tính hợp lệ của dấu ngoặc: 

  • Ngăn xếp có thể được sử dụng để kiểm tra các dấu ngoặc và đảm bảo tính hợp lệ của một biểu thức toán học hoặc lời gọi hàm trong ngôn ngữ lập trình.

  • Một chuỗi có dấu ngoặc cân bằng khi mỗi dấu mở ngoặc được theo sau bởi một dấu đóng ngoặc tương ứng được đặt ở vị trí thích hợp và ngược lại. 

Ví dụ: 

  • Các chuỗi "(((){[]}))", "({})([])" có dấu ngoặc cân bằng.

  • Các chuỗi "((()]}", "((())" có dấu ngoặc không cân bằng. 

  • Để kiểm tra tính hợp lệ của chuỗi bằng ngăn xếp cần duyệt qua từng kí tự:

Nếu kí tự là dấu mở ngoặc ("(" hoặc "{" hoặc "[") thì thêm vào ngăn xếp với thao tác push.

Nếu kí tự là dấu đóng ngoặc (")" hoặc "}" hoặc "]") thì lấy ra kí tự ở đỉnh ngăn xếp với thao tác pop. Sau đó kiểm tra:

  • Nếu kí tự được pop là dấu mở ngoặc tương ứng với dấu đóng ngoặc đang xét thì tiếp tục quá trình duyệt chuỗi.

  • Ngược lại thì trả về kết quả chuỗi có dấu ngoặc không cân bằng.

Bỏ qua nếu kí tự không phải là mở ngoặc hay đóng ngoặc.

Sau khi hoàn thành duyệt chuỗi, kiểm tra ngăn xếp: 

  • Nếu rỗng  chuỗi có dấu ngoặc cân bằng. 

  • Nếu không rỗng  chuỗi có dấu ngoặc không cân bằng. 

Ví dụ: Bảng 1 minh hoạ quá trình sử dụng ngăn xếp để kiểm tra tính hợp lệ các dấu ngoặc của chuỗi [(2+3)*5].

Bảng 1. Minh hoạ quá trình sử dụng ngăn xếp để kiểm tra tính hợp lệ của dấu ngoặc

Tính giá trị các biểu thức số học: 

  • Ngăn xếp được sử dụng để tính giá trị các biểu thức số học bao gồm các toán hạng và toán tử, các dấu mở ngoặc và đóng ngoặc.  

  • Tính giá trị biểu thức số học gồm hai bước:

Chuyển biểu thức dạng trung tố sang dạng tiến tố (toán tử nằm trước toán hạng) hoặc hậu tố (toán tử nằm sau toán hạng). 

Lưu ý: Thông thường, để chuyển từ biểu thức từ trung tố sang dạng tiền tố hay hậu tố, em cần phải phân tích các thành phần của biểu thức thành các phần tử: toán hạng, toán tử, dấu mở ngoặc, dấu đóng ngoặc,... Kết quả biểu thức dạng tiền tố hay hậu tố phải cho thấy sự tách biệt của các phần tử này (chẳng hạn, các phần tử tách nhau bởi khoảng trống). Tuy nhiên, việc phân tích các phần tử trong chuỗi biểu thức đòi hỏi một số kĩ thuật xử lí chuỗi, nên trong bài học này, em có thể giả sử các toán tử và toán hạng trong biểu thức chỉ bao gồm một kí tự.

Ví dụ: Biểu thức dạng trung tố A + B có dạng tiền tố là +AB và dạng hậu tố là AB+. Bảng 2 minh hoạ quá trình sử dụng ngăn xếp để chuyển biểu thức dạng trung tố 2 * (4 + 3) – 5 sang dạng hậu tố 2 4 3 + * 5 –.

 

Bảng 2. Minh hoạ quá trình sử dụng ngăn xếp để chuyển từ biểu thức dạng trung tố sang dạng hậu tố

Sử dụng ngăn xếp để tính giá trị biểu thức dạng hậu tố. 

Với mỗi kí tự trong biểu thức dạng hậu tố:

  • Nếu là toán hạng thì được thêm vào ngăn xếp. 

  • Nếu là toán tử, thì hai toán hạng ở đầu ngăn xếp được lấy ra để thực hiện tính giá trị với toán tử đó, sau đó giá trị tính được sẽ được thêm vào đỉnh ngăn xếp. 

Quá trình này tiếp tục cho đến khi ngăn xếp chỉ còn một phần tử, cũng chính là giá trị của biểu thức. 

Ví dụ: Bảng 3 minh hoạ quá trình sử dụng ngăn xếp để tính giá trị của biểu thức dạng hậu tố 
2 4 3 + * 5 –.

Bảng 3. Minh hoạ quá trình sử dụng ngăn xếp để tính giá trị của biểu thức dạng hậu tố

Hướng dẫn trả lời câu hỏi hoạt động Làm SGK tr.22:

a)

Chuỗi biểu thức

Ngăn xếp stack

Quá trình thực hiện

[2 * (4 + 3) – 5]

Stack rỗng.

[2 * (4 + 3) – 5]

Thêm "[" vào stack.

[2 * (4 + 3) – 5]

Bỏ qua kí tự "2".

[2 * (4 + 3) – 5]

Bỏ qua kí tự "*".

[2 * (4 + 3) – 5]

Thêm "(" vào stack.

[2 * (4 + 3) – 5]

Bỏ qua kí tự "4".

[2 * (4 + 3) – 5]

Bỏ qua kí tự "+".

[2 * (4 + 3) – 5]

Bỏ qua kí tự "3".

[2 * (4 + 3) – 5]

Lấy "(" ra khỏi stack. 
Kiểm tra tương ứng với dấu")".

[2 * (4 + 3)  5]

Bỏ qua kí tự "–".

[2 * (4 + 3) – 5]

Bỏ qua kí tự "5".

[2 * (4 + 3) – 5]

Lấy "[" ra khỏi stack. 
Kiểm tra tương ứng với dấu"]".

b) 

Biểu thức 
trung tố

Ngăn xếp stack

Biểu thức 
hậu tố 
postfix

Quá trình thực hiện

(1 – 4) * 2 + 7

[]

Stack và chuỗi postfix rỗng.

(– 4) * 2 + 7

[]

Thêm"(" vào stack.

(– 4) * 2 + 7

1

Thêm "1" vào postfix.

(1 – 4) * 2 + 7

1

Thêm "" vào stack.

(1 – 4) * 2 + 7

14

Thêm "4" vào postfix.

(1 – 4) * 2 + 7

14  

Gập dấu")", 

lấy "" ra khỏi stack cho đến khi gặp "(", thêm "" vào postfix. Lấy "(".

(1 – 4) * 2 + 7

14

Thêm "*" vào stack.

(1 – 4) * + 7

142

Thêm "2" vào postfix.

(1 – 4) * 2 + 7

142 *

Toán tử "+" có độ ưu tiên thấp hơn "*" ở đỉnh stack nên lấy "*" ra và thêm "*" vào postfix. 
Thêm "+" vào stack.

(1 – 4) * 2 + 7

142 * 7

Thêm "7" vào postfix.

(1 – 4) * 2 + 7

142 * 7 +

Đã quét hết biểu thức trung tố.

Lấy "+" từ stack và thêm vào postfix.

 

Hoạt động 2. Thực hành

a. Mục tiêu: HS viết được chương trình đơn giản để hiểu rõ ứng dụng của ngăn xếp.

b. Nội dung: GV hướng dẫn, hỗ trợ HS thực hành theo hai nhiệm vụ trong SGK.

c. Sản phẩm: 

- Chương trình chuyển biểu thức dạng trung tố sang hậu tố. 

- Chương trình tính giá trị của biểu thức số học với biểu thức đầu vào là biểu thức hậu tố.

d. Tổ chức thực hiện:

 

--------------- Còn tiếp ---------------

 

Trên chỉ là 1 phần của giáo án. Giáo án khi tải về có đầy đủ nội dung của bài. Đủ nội dung của học kì I + học kì II

Hệ thống có đầy đủ các tài liệu:

  • Giáo án word (400k)
  • Giáo án Powerpoint (500k)
  • Trắc nghiệm theo cấu trúc mới (250k)
  • Đề thi cấu trúc mới: ma trận, đáp án, thang điểm..(250k)
  • Phiếu trắc nghiệm câu trả lời ngắn (250k)
  • Trắc nghiệm đúng sai (250k)
  • Lý thuyết bài học và kiến thức trọng tâm (200k)
  • File word giải bài tập sgk (150k)
  • Phiếu bài tập để học sinh luyện kiến thức (200k)
  • .....
  • Các tài liệu được bổ sung liên tục để 30/01 có đủ cả năm

Nâng cấp lên VIP đê tải tất cả ở tài liệu trên

  • Phí nâng cấp VIP: 900k

=> Chỉ gửi 500k. Tải về dùng thực tế. Nếu hài lòng, 1 ngày sau mới gửi phí còn lại

Cách tải hoặc nâng cấp:

  • Bước 1: Chuyển phí vào STK: 1214136868686 - cty Fidutech - MB(QR)
  • Bước 2: Nhắn tin tới Zalo Fidutech - nhấn vào đây để thông báo và nhận tài liệu

Xem toàn bộ: Giáo án chuyên đề Khoa học máy tính 12 chân trời sáng tạo đủ cả năm

ĐẦY ĐỦ GIÁO ÁN CÁC BỘ SÁCH KHÁC

Đủ giáo án word và powerpoint các môn lớp 12 kết nối tri thức
Đủ giáo án word và powerpoint các môn lớp 12 cánh diều

GIÁO ÁN WORD LỚP 12 CHÂN TRỜI SÁNG TẠO

Giáo án toán 12 chân trời sáng tạo
Giáo án đại số 12 chân trời sáng tạo
Giáo án hình học 12 chân trời sáng tạo

Giáo án sinh học 12 chân trời sáng tạo
Giáo án hoá học 12 chân trời sáng tạo
Giáo án vật lí 12 chân trời sáng tạo

Giáo án ngữ văn 12 chân trời sáng tạo
Giáo án lịch sử 12 chân trời sáng tạo
Giáo án kinh tế pháp luật 12 chân trời sáng tạo
Giáo án âm nhạc 12 chân trời sáng tạo

Giáo án Tin học 12 - Định hướng Khoa học máy tính chân trời sáng tạo
Giáo án Tin học 12 - Định hướng Tin học ứng dụng chân trời sáng tạo
Giáo án hoạt động trải nghiệm hướng nghiệp 12 chân trời sáng tạo bản 1
Giáo án hoạt động trải nghiệm hướng nghiệp 12 chân trời sáng tạo bản 2

GIÁO ÁN POWERPOINT LỚP 12 CHÂN TRỜI SÁNG TẠO

 
 

GIÁO ÁN CHUYÊN ĐỀ LỚP 12 CHÂN TRỜI SÁNG TẠO

Giáo án chuyên đề ngữ văn 12 chân trời sáng tạo
Giáo án chuyên đề toán 12 chân trời sáng tạo
Giáo án chuyên đề kinh tế pháp luật 12 kết nối tri thức

Giáo án chuyên đề vật lí 12 chân trời sáng tạo
Giáo án chuyên đề hoá học 12 chân trời sáng tạo
Giáo án chuyên đề sinh học 12 chân trời sáng tạo

Giáo án chuyên đề lịch sử 12 chân trời sáng tạo
Giáo án chuyên đề địa lí 12 chân trời sáng tạo
Giáo án chuyên đề âm nhạc 12 chân trời sáng tạo

Giáo án chuyên đề Tin học 12 - Định hướng Tin học ứng dụng chân trời sáng tạo
Giáo án chuyên đề Tin học 12 - Định hướng Khoa học máy tính chân trời sáng tạo

GIÁO ÁN POWERPOINT CHUYÊN ĐỀ LỚP 12 CHÂN TRỜI SÁNG TẠO

 
 

GIÁO ÁN DẠY THÊM LỚP 12 CHÂN TRỜI SÁNG TẠO

Giáo án dạy thêm ngữ văn 12 chân trời sáng tạo
Giáo án powerpoint dạy thêm ngữ văn 12 chân trời sáng tạo
Giáo án dạy thêm toán 12 chân trời sáng tạo
Giáo án powerpoint dạy thêm toán 12 chân trời sáng tạo

Tài liệu giảng dạy

Chat hỗ trợ
Chat ngay