Giáo án Tin học 8
Tin họcLớp 8Phần 7. Chủ đề 5. Giải quyết vấn đề với sự trợ giúp của máy tính

Giáo án Bài 12. Từ thuật toán đến chương trình

Kế hoạch bài dạy theo mẫu Công văn 5512/BGDĐT-GDTrH · 1 tiết (45 phút)

I. Mục tiêu

1. Kiến thức

  • Nêu được các bước chuyển một bài toán thành chương trình: xác định đầu vào, đầu ra, mô tả thuật toán rồi chọn khối lệnh Scratch tương ứng.
  • Giải thích được vì sao cần lưu đầu vào vào biến trước khi dùng và vì sao phải tính biến trung gian trước khi tính kết quả.
  • Vận dụng được thuật toán tính chu vi hình chữ nhật để viết chương trình Scratch với a = 7, b = 4, đúng kết quả p = 2×(7+4)=222\times(7+4)=22.
  • Kiểm tra được chương trình bằng vết tính tay với nhiều bộ dữ liệu, kể cả trường hợp a = b = 5, và nêu được điều kiện đầu vào (số dương, cùng đơn vị).

2. Năng lực

a) Năng lực chung

  • Tự chủ và tự học: HS tự đối chiếu kết quả của chương trình với kết quả tính tay, tự sửa lỗi khi phát hiện công thức sai như 2×a+b2\times a+b cho kết quả 18 thay vì 22.
  • Giao tiếp và hợp tác: HS làm việc theo cặp, trao đổi và thống nhất thứ tự các khối lệnh, nêu lí do khi báo cáo trước lớp.
  • Giải quyết vấn đề và sáng tạo: HS đề xuất thêm ít nhất một bộ dữ liệu thử ngoài a = 7, b = 4 và a = b = 5, giải thích vì sao bộ đó cần được kiểm tra.

b) Năng lực đặc thù

  • Giải quyết vấn đề với sự hỗ trợ của công nghệ thông tin và truyền thông (NLc): HS chuyển thuật toán thành chương trình Scratch gồm hỏi-đáp đầu vào, lưu biến, tính toán và xuất kết quả, rồi kiểm thử để phát hiện và sửa lỗi.
  • Ứng dụng công nghệ thông tin và truyền thông trong học và tự học (NLd): HS dùng Scratch và trang bài học NeoEdu để thực hành, tự kiểm tra bài tập tương tác.
  • Sử dụng và quản lí các phương tiện công nghệ thông tin và truyền thông (NLa): HS mở, lưu chương trình với tên rõ nghĩa, giữ bản gốc và kiểm tra lại sau khi mở.
  • Hợp tác trong môi trường số (NLe): HS cùng bạn trong cặp chia sẻ tệp chương trình và góp ý cho nhau qua hoạt động thử nghiệm.

3. Phẩm chất

  • Chăm chỉ: HS kiên trì kiểm thử nhiều bộ dữ liệu thay vì dừng ở lần chạy đầu tiên thành công.
  • Trách nhiệm: HS lưu sản phẩm đúng quy định, chỉ dùng dữ liệu giả định a = 7, b = 4 và a = b = 5 khi thực hành, hoàn thành sản phẩm cá nhân nộp cho GV.
  • Trung thực: HS ghi đúng kết quả quan sát được khi chạy chương trình, không sửa kết quả để khớp đáp án.

II. Thiết bị dạy học và học liệu

1. Giáo viên

  • Máy tính, máy chiếu hoặc bảng tương tác để trình bày thuật toán và chạy thử chương trình Scratch mẫu.
  • Phần mềm Scratch (trực tuyến hoặc ngoại tuyến) đã cài sẵn trên máy tính của HS.
  • Phiếu học tập số 1 và Phiếu học tập số 2 in sẵn hoặc chiếu lên màn hình.
  • Học liệu số NeoEdu: trang bài học có bài giảng, ví dụ và bài tập tương tác tại neoedu.vn/learn/8/informatics/bai-12-tu-thuat-toan-den-chuong-trinh (dùng ở hoạt động luyện tập).

2. Học sinh

  • Máy tính có phần mềm Scratch, tai nghe nếu cần; tài khoản lưu bài theo hướng dẫn của GV.
  • Vở ghi, bút, giấy nháp để làm vết tính tay.
  • Phiếu học tập số 1 và Phiếu học tập số 2 (in hoặc xem trên màn hình).

III. Tiến trình dạy học

Hoạt động 1: Mở đầu · 5 phút

Từ bài toán đến chương trình: máy cần biết gì?

a) Mục tiêu

Huy động kiến thức về chu vi hình chữ nhật đã học ở lớp dưới; giúp HS nhận ra muốn máy tính giải một bài toán thì phải biết đầu vào, cách xử lí và đầu ra.

b) Nội dung

GV đặt câu hỏi: Để máy tính tính được chu vi hình chữ nhật, máy cần được cung cấp những gì? Máy cần làm phép tính gì? Máy cần đưa ra kết quả dưới dạng nào? HS trả lời nhanh theo cặp, sau đó ghi ba ý vào vở theo thứ tự: đầu vào, xử lí, đầu ra.

c) Sản phẩm

HS nêu được: đầu vào là chiều dài a và chiều rộng b (hai số dương cùng đơn vị); xử lí là tính p=2×(a+b)p=2\times(a+b); đầu ra là giá trị chu vi p. HS nhận ra đây là bộ ba đầu vào – xử lí – đầu ra của một thuật toán.

d) Tổ chức thực hiện

  1. Giáo viên

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

    GV chiếu hình chữ nhật có ký hiệu a, b và nêu câu hỏi: Muốn máy tính tính chu vi, máy cần biết những gì? Nêu yêu cầu: trao đổi 1 phút với bạn cùng bàn.

    Học sinh

    HS quan sát hình, suy nghĩ và trao đổi cặp đôi về các thông tin cần thiết.

  2. Giáo viên

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

    GV đi quanh lớp, nhắc HS dùng từ 'đầu vào', 'xử lí', 'đầu ra' khi trả lời.

    Học sinh

    HS trao đổi và ghi nháp ba ý vào vở.

  3. Giáo viên

    Bước 3: Báo cáo, thảo luận

    GV gọi 2 đến 3 cặp trình bày. GV hỏi thêm: Nếu máy không biết b thì có tính được p không?

    Học sinh

    Dự kiến HS trả lời: Đầu vào là hai độ dài a, b; xử lí là tính 2×(a+b); đầu ra là chu vi. Không biết b thì máy không tính được p.

  4. Giáo viên

    Bước 4: Kết luận, nhận định

    GV chốt: Chuyển bài toán thành chương trình bắt đầu bằng việc xác định đầu vào, đầu ra và cách xử lí. GV giới thiệu nhiệm vụ của tiết học.

    Học sinh

    HS ghi tiêu đề bài học và ba thành phần đầu vào – xử lí – đầu ra vào vở.

Hoạt động 2.1: Hình thành kiến thức mới · 8 phút

Mô tả thuật toán từ đầu vào, đầu ra

a) Mục tiêu

Giúp HS mô tả được thuật toán tính chu vi hình chữ nhật thành các bước rõ ràng, có thứ tự và xác định đúng đầu vào, đầu ra.

b) Nội dung

HS làm việc theo cặp với Phiếu học tập số 1, phần A. Nhiệm vụ: (1) Ghi đầu vào, đầu ra và công thức xử lí. (2) Viết thuật toán gồm bốn bước: nhập a, nhập b, tính p, nói p. (3) Giải thích vì sao phải nhập a và b trước khi tính p.

c) Sản phẩm

Thuật toán dự kiến:

  • Bước 1: Hỏi chiều dài và lưu vào biến a.
  • Bước 2: Hỏi chiều rộng và lưu vào biến b.
  • Bước 3: Tính p = 2×(a+b)2\times(a+b).
  • Bước 4: Nói giá trị p.
    Đầu vào: hai độ dài a, b là số dương cùng đơn vị. Đầu ra: chu vi p. HS giải thích được: biến p chỉ có giá trị sau khi đã có a và b, nên không thể tính p trước khi nhập dữ liệu.

d) Tổ chức thực hiện

  1. Giáo viên

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

    GV phát Phiếu học tập số 1, phần A, và nêu yêu cầu: mô tả thuật toán bằng bốn bước, mỗi bước một dòng; cặp đôi thống nhất trong 4 phút.

    Học sinh

    HS đọc phiếu, nhận nhiệm vụ và ghi nhóm công việc vào phiếu.

  2. Giáo viên

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

    GV quan sát, gợi ý khi cặp còn nhầm: Bước nào cần có kết quả của bước trước?

    Học sinh

    HS viết bốn bước, kiểm tra lại thứ tự và tự đối chiếu với đầu vào, đầu ra đã ghi.

  3. Giáo viên

    Bước 3: Báo cáo, thảo luận

    GV mời 2 cặp đọc thuật toán. GV hỏi: Vì sao bước 3 không được đặt trước bước 2?

    Học sinh

    Dự kiến HS trả lời: Vì công thức p = 2×(a+b) cần giá trị b; nếu tính trước thì b chưa có giá trị nên kết quả sai.

  4. Giáo viên

    Bước 4: Kết luận, nhận định

    GV chốt: Thuật toán gồm các bước có thứ tự; đầu vào phải có trước khi xử lí; mỗi bước chỉ làm một việc rõ ràng. GV nêu công thức đúng là p=2×(a+b)p=2\times(a+b).

    Học sinh

    HS sửa lại thuật toán nếu còn sai và ghi kết luận vào vở.

Hoạt động 2.2: Hình thành kiến thức mới · 8 phút

Ghép khối lệnh Scratch từ thuật toán

a) Mục tiêu

Giúp HS chọn đúng khối Scratch tương ứng với từng bước của thuật toán, biết tạo biến, lưu đầu vào và ghép biểu thức toán học có khối ngoặc.

b) Nội dung

GV trình bày mẫu trên máy chiếu: mở Scratch, tạo biến a, b, p; ghép khối 'hỏi ... và đợi', khối 'đặt ... thành', khối 'nói'. HS làm theo ở máy tính, ghi lại khối đã chọn vào Phiếu học tập số 1, phần B. Lưu ý: công thức trong khối đặt p phải là 2×(a+b)2\times(a+b), dùng khối cộng đặt trong khối nhân, không viết thành 2×a+b2\times a+b.

c) Sản phẩm

Chương trình mẫu (thứ tự khối):

  • hỏi [Chiều dài?] và đợi, lưu vào a (đặt a thành câu trả lời).
  • hỏi [Chiều rộng?] và đợi, lưu vào b.
  • đặt p thành (2 × (a + b)).
  • nói (p).
    Khi chạy với 7 và 4, khung nói hiển thị 22. HS nêu được: phải có khối ngoặc hoặc khối tổng trong phép nhân; nếu ghép 2 × a + b thì kết quả là 18.

d) Tổ chức thực hiện

  1. Giáo viên

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

    GV hướng dẫn mở Scratch, tạo ba biến a, b, p bằng nút 'Tạo biến'. Nêu nhiệm vụ: ghép bốn khối theo đúng thứ tự thuật toán.

    Học sinh

    HS mở Scratch, tạo biến a, b, p và chuẩn bị kéo thả khối.

  2. Giáo viên

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

    GV đi quanh lớp, kiểm tra việc đặt đúng thứ tự khối và lưu đúng biến. Nhắc HS lưu tệp với tên rõ nghĩa, ví dụ Chu_vi_HCN_ten_hoc_sinh.

    Học sinh

    HS ghép khối, chạy thử với 7 và 4, ghi kết quả vào phiếu.

  3. Giáo viên

    Bước 3: Báo cáo, thảo luận

    GV hỏi: Khi chạy, khung nói hiện số mấy? Nếu thay khối cộng bằng 2 × a + b thì kết quả ra bao nhiêu?

    Học sinh

    Dự kiến HS trả lời: Với 7 và 4 khung nói hiện 22; với công thức 2 × a + b thì hiện 18.

  4. Giáo viên

    Bước 4: Kết luận, nhận định

    GV chốt: Muốn chuyển thuật toán thành khối Scratch, mỗi bước tương ứng một khối lệnh; biểu thức toán học phải đặt đúng khối ngoặc. GV nhắc nhớ lưu bản gốc trước khi sửa.

    Học sinh

    HS ghi vào vở: thuật toán → khối lệnh; biến cần tạo trước khi dùng.

Hoạt động 2.3: Hình thành kiến thức mới · 6 phút

Kiểm thử bằng vết tính tay và trường hợp đặc biệt

a) Mục tiêu

Giúp HS đối chiếu kết quả chương trình với vết tính tay, thử thêm bộ dữ liệu a = b = 5, nhận ra việc chỉ thử một bộ số thuận lợi là chưa đủ.

b) Nội dung

HS làm Phiếu học tập số 1, phần C: lập bảng vết tính tay cho hai bộ dữ liệu (a = 7, b = 4) và (a = b = 5); so sánh với kết quả chạy chương trình; thử công thức 2×a+b với a = 7, b = 4 để tìm phản ví dụ. HS nêu điều kiện đầu vào.

c) Sản phẩm

Bảng vết tính tay:

  • a = 7, b = 4: t = a + b = 11, p = 2×11 = 22; chương trình cho 22, khớp.
  • a = 5, b = 5: t = 10, p = 20; chương trình cho 20, khớp.
    Phản ví dụ: với a = 7, b = 4, công thức 2×a+b cho 18, sai so với 22.
    Điều kiện: a, b là số dương, cùng đơn vị đo; không áp dụng cho độ dài 0 trong bài toán này.

d) Tổ chức thực hiện

  1. Giáo viên

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

    GV nêu nhiệm vụ: lập vết tính tay cho (7, 4) và (5, 5), so sánh với kết quả chạy chương trình. GV hỏi: Chỉ thử một bộ số thì đã đủ chưa?

    Học sinh

    HS nhận phiếu và lập bảng vết trên giấy nháp, ghi từng bước tính.

  2. Giáo viên

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

    GV hướng dẫn HS chạy chương trình với a = 5, b = 5 và so sánh. Nhắc HS ghi lại mọi kết quả, kể cả khi sai.

    Học sinh

    HS chạy chương trình với hai bộ số, đối chiếu với vết tính tay và điền bảng.

  3. Giáo viên

    Bước 3: Báo cáo, thảo luận

    GV mời một cặp báo cáo bảng vết và nêu phản ví dụ. GV hỏi: Vì sao cần thử bộ 5, 5 mà không chỉ thử 7, 4?

    Học sinh

    Dự kiến HS trả lời: Bộ 5, 5 có hai cạnh bằng nhau, giúp kiểm tra thêm; bộ 7, 4 thử được một trường hợp nhưng vẫn có thể che giấu lỗi như 2×a+b (lỗi chỉ lộ khi thử bộ khác).

  4. Giáo viên

    Bước 4: Kết luận, nhận định

    GV chốt: Kiểm thử cần đối chiếu vết tính tay và thử nhiều bộ dữ liệu, không chỉ một bộ thuận lợi. Điều kiện đầu vào là số dương cùng đơn vị.

    Học sinh

    HS ghi kết luận và điều kiện đầu vào vào vở.

Hoạt động 3: Luyện tập · 8 phút

Kiểm tra nhanh: đúng hay sai, ghép đúng, sắp xếp

a) Mục tiêu

Củng cố khái niệm đầu vào – xử lí – đầu ra, thứ tự các bước và điều kiện áp dụng; phát hiện lỗi thường gặp.

b) Nội dung

HS làm bài tập trên trang NeoEdu hoặc phiếu, phần Phiếu học tập số 2. Các câu gồm: (2) công thức chu vi đúng; (3) kết quả với 7 và 4; (4) lưu câu trả lời trước khi hỏi tiếp; (5) a = 0 có phải hình chữ nhật thông thường không; (6) ghép khái niệm và tác dụng; (7) sắp xếp bốn bước tính chu vi với a = 7, b = 4; (9) tìm phản ví dụ của công thức 2×a+b.

c) Sản phẩm

Đáp án:

  • Câu 2: A. 2×(a+b).
  • Câu 3: B. 22 (vì 2×11 = 22).
  • Câu 4: Đúng. Lưu trước để tránh mất đầu vào.
  • Câu 5: Sai. Bài này yêu cầu độ dài dương.
  • Câu 6: Đầu vào – hai độ dài cùng đơn vị; Xử lí – tính 2×(a+b); Đầu ra – chu vi.
  • Câu 7: Nhập a, b → đặt t = a+b → đặt p = 2×t → nói p (với 7, 4: t = 11, p = 22). Cho phép đổi thứ tự hỏi a, b nếu gán đúng biến.
  • Câu 9: Phản ví dụ a = 7, b = 4 cho 18 thay vì 22; sửa thành 2×(a+b) hoặc 2×a+2×b.

d) Tổ chức thực hiện

  1. Giáo viên

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

    GV nêu quy tắc: làm cá nhân trong 4 phút, sau đó đối chiếu với bạn cùng bàn. GV chiếu các câu hỏi lên màn hình.

    Học sinh

    HS đọc câu hỏi, làm cá nhân trên Phiếu học tập số 2 hoặc trên trang NeoEdu.

  2. Giáo viên

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

    GV theo dõi, gọi ý khi HS chọn sai câu 5 hoặc câu 9.

    Học sinh

    HS làm bài, đối chiếu với bạn và sửa lỗi.

  3. Giáo viên

    Bước 3: Báo cáo, thảo luận

    GV hỏi: Tại sao câu 9 công thức 2×a+b bị coi là sai? GV gọi 2 HS trình bày.

    Học sinh

    Dự kiến HS trả lời: Với a = 7, b = 4 công thức cho 18 nhưng chu vi là 22, nên có phản ví dụ.

  4. Giáo viên

    Bước 4: Kết luận, nhận định

    GV chữa nhanh các câu sai, nhấn mạnh: thứ tự các bước quyết định kết quả; mọi công thức cần kiểm tra bằng phản ví dụ.

    Học sinh

    HS sửa bài và ghi lỗi hay gặp vào vở.

Hoạt động 4: Vận dụng · 10 phút

Thực hành: viết chương trình chu vi hình chữ nhật trên Scratch

a) Mục tiêu

Vận dụng toàn bộ quy trình từ thuật toán đến chương trình để tạo sản phẩm Scratch hoàn chỉnh, kiểm thử và nêu điều kiện đầu vào.

b) Nội dung

HS tạo chương trình Scratch tính chu vi hình chữ nhật với dài a = 7, rộng b = 4 (số dương cùng đơn vị). Sau đó chạy thử với a = b = 5. Lưu bản gốc, lưu sản phẩm với tên rõ nghĩa, kiểm tra lại sau khi mở. Phần còn lại được hoàn thiện ở nhà. GV chấm sản phẩm theo thang điểm.

c) Sản phẩm

Sản phẩm: tệp Scratch có đủ ba bước hỏi – lưu biến, tính p = 2×(a+b) và nói p; kết quả 22 với (7, 4) và 20 với (5, 5); ghi điều kiện đầu vào là số dương cùng đơn vị.
Thang điểm (1 điểm): đầu vào 0,2; công thức đúng 0,4; hai lần thử đúng 0,3; nêu điều kiện 0,1.

d) Tổ chức thực hiện

  1. Giáo viên

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

    GV nêu yêu cầu sản phẩm và thang điểm; nhắc HS lưu tệp với tên rõ nghĩa, không ghi đè bản gốc.

    Học sinh

    HS đọc yêu cầu, mở tệp mới trên Scratch.

  2. Giáo viên

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

    GV quan sát, hỗ trợ HS gặp lỗi ghép khối; nhắc HS chạy thử cả hai bộ số.

    Học sinh

    HS ghép chương trình, chạy thử với (7, 4) và (5, 5), ghi kết quả. Dự kiến HS gặp lỗi: quên tạo biến hoặc viết 2×a+b; HS tự sửa và kiểm tra lại.

  3. Giáo viên

    Bước 3: Báo cáo, thảo luận

    GV mời 2 HS trình bày kết quả hai lần chạy và điều kiện đầu vào. GV hỏi: Nếu nhập số âm thì chương trình có còn đúng ý nghĩa bài toán không?

    Học sinh

    Dự kiến HS trả lời: Kết quả hai lần chạy là 22 và 20; điều kiện là số dương cùng đơn vị; số âm không có ý nghĩa với chiều dài.

  4. Giáo viên

    Bước 4: Kết luận, nhận định

    GV nhận xét chung, nêu hướng dẫn hoàn thiện sản phẩm ở nhà và thời hạn nộp. GV nhắc: sản phẩm phải là kết quả của chính HS.

    Học sinh

    HS lưu tệp, kiểm tra lại sau khi mở và ghi nhiệm vụ về nhà vào vở.

Phiếu học tập

Phiếu học tập số 1

A. Mô tả thuật toán tính chu vi hình chữ nhật

  • Đầu vào: ..........................................
  • Xử lí: ..........................................
  • Đầu ra: ..........................................
  • Thuật toán (bốn bước):
    • Bước 1: ..........................................
    • Bước 2: ..........................................
    • Bước 3: ..........................................
    • Bước 4: ..........................................
  • Vì sao phải nhập a và b trước khi tính p? ..........................................

B. Ghép khối Scratch

  • Khối hỏi và lưu vào biến a: ..........................................
  • Khối hỏi và lưu vào biến b: ..........................................
  • Khối đặt p bằng biểu thức: ..........................................
  • Khối nói p: ..........................................
  • Kết quả khi chạy với a = 7, b = 4: ..........................................

C. Vết tính tay và kiểm thử

  • Bộ (a = 7, b = 4): t = a + b = ....., p = 2×t = ..... ; chương trình cho ..... ; khớp hay không? ..........
  • Bộ (a = 5, b = 5): t = ....., p = ..... ; chương trình cho ..... ; khớp hay không? ..........
  • Phản ví dụ với công thức 2×a+b, a = 7, b = 4: kết quả ....., so với 22 thì ..........
  • Điều kiện đầu vào: ...........................................

Phiếu học tập số 2

Khoanh tròn đáp án đúng hoặc ghi Đúng/Sai.

  • Câu 2: Công thức chu vi đúng là: A. 2×(a+b); B. 2×a+b; C. a×b; D. a+b.
  • Câu 3: Với a = 7, b = 4, kết quả đúng là: A. 28; B. 22; C. 18; D. 11.
  • Câu 4: Cần lưu câu trả lời của câu hỏi trước khi hỏi tiếp. (Đúng / Sai)
  • Câu 5: a = 0 vẫn là hình chữ nhật thông thường của bài toán. (Đúng / Sai)
  • Câu 6: Ghép khái niệm với tác dụng:
    • Đầu vào – ...
    • Xử lí – ...
    • Đầu ra – ...
      Các tác dụng cho sẵn: Tính 2×(a+b); Chu vi; Hai độ dài cùng đơn vị.
  • Câu 7: Sắp xếp bốn bước sau (a = 7, b = 4), biến t và p chưa có giá trị trước khi chạy: Nói p; Đặt p bằng 2×t; Nhập hai độ dài và lưu vào a, b; Đặt t bằng a+b.
  • Câu 9: Một bạn dùng 2×a+b. Nêu dữ liệu phản ví dụ và cách sửa: ...........................................

Hướng dẫn về nhà

  • Hoàn thiện chương trình Scratch tính chu vi hình chữ nhật với a = 7, b = 4; chạy thử thêm a = b = 5 và nêu điều kiện đầu vào. Lưu tệp với tên rõ nghĩa, kiểm tra lại sau khi mở, nộp cho GV đúng hạn.
  • Viết ngắn gọn (3 đến 5 dòng) về một lỗi em đã mắc khi ghép khối hoặc khi chọn công thức, và cách em đã sửa.
  • Luyện thêm các bài tập tương tác trên trang bài học NeoEdu: neoedu.vn/learn/8/informatics/bai-12-tu-thuat-toan-den-chuong-trinh.
  • Ghi nhớ: Chuyển bài toán thành chương trình cần xác định đầu vào/đầu ra, mô tả thuật toán rồi chọn khối Scratch tương ứng.

Giáo án do NeoEdu soạn với sự hỗ trợ của AI, dựa trên nội dung bài học trên Học liệu. Thầy cô nên đọc lại và điều chỉnh cho phù hợp với học sinh của mình; bản Word để sửa trực tiếp.