Nâng cao · Mức E · Bài 7

Dự án cuối: chương trình Ôn bảng nhân

Mục tiêu: Dự án Ôn bảng nhân qua năm bước: vấn đề, thuật toán, lập trình, kiểm thử, báo cáo.

Em sẽ học gì

  • Nội dung trong bài: làm chương trình Ôn bảng nhân để giải quyết một vấn đề thật, qua năm bước, từ vấn đề tới báo cáo.
  • Chương trình bắt buộc có biến, vòng lặp, rẽ nhánh, và ít nhất một khối tự tạo hoặc một danh sách.
  • Video làm mẫu dự án Ôn bảng nhân, các bạn tự chọn vấn đề của mình.
  • Bước một, xác định vấn đề: học sinh cần luyện bảng nhân, và muốn biết ngay mình đúng hay sai.
  • Đầu vào: câu trả lời học sinh gõ từ bàn phím.
  • Đầu ra: Đúng hoặc Sai cho từng câu, kèm đáp án nếu sai, và số câu đúng sau năm câu.
  • Phần giao cho máy tính: ra đề ngẫu nhiên, chấm từng câu, và đếm số câu đúng.
  • Bước bốn, kiểm thử. Lập bảng tám trường hợp. Một và hai: trả lời đúng, trả lời sai.
  • Ba và bốn, đầu vào sai: gõ chữ, hoặc bỏ trống. Chương trình không được treo, tính là sai.
  • Năm và sáu, trường hợp biên: số có 0 ở đầu, số có dấu cách ở cuối, vẫn phải tính là đúng.
  • Bảy: cả năm câu đúng thì ra 5, vừa thử xong. Tám: chơi lại thì dung phải đếm lại từ 0.
  • Bước năm, báo cáo một đến hai trang: vấn đề, đầu vào, đầu ra, và sơ đồ khối của thuật toán.
  • Ảnh chụp chương trình, giải thích khối tự tạo và các biến.
  • Bảng kiểm thử, và nhật ký các lỗi đã gặp khi làm, sửa như thế nào.
  • Cuối cùng: điều rút ra, muốn cải tiến gì. Trình bày trước lớp trong ba phút.
  • Về kỹ thuật lập trình, bài này ta học: quy trình năm bước: vấn đề, thuật toán, lập trình, kiểm thử, báo cáo.
  • Kiểm thử có kế hoạch: trường hợp bình thường, trường hợp biên, và đầu vào sai.
  • Chương trình là bản mô tả thuật toán: vẽ sơ đồ khối trước, viết khối lệnh sau.
Kết quả cần đạt
Kết quả cần đạt: bấm cờ xanh để chạy thử.
136

Đây là bảng nhân từ 2 đến 9: mỗi cột là một bảng nhân, mỗi bảng có 10 phép nhân.

Bước 1
236

Ví dụ bảng 7: 7 nhân 1 bằng 7, 7 nhân 2 bằng 14, cứ thế tới 7 nhân 10 bằng 70.

Bước 2
336

Chương trình chọn ngẫu nhiên một ô trong bảng: a là số của bảng, từ 2 đến 9; b từ 1 đến 10.

Bước 3
436

Rồi hỏi: 7 nhân 8 bằng mấy? Gõ 56 thì máy nói Đúng. Gõ số khác thì máy nói Sai, kèm đáp án. Bước hai, thuật toán. Việc hỏi một câu viết thành một khối tự tạo: chọn ngẫu nhiên a và b, rồi hỏi a nhân b. Trả lời bằng a nhân b thì tăng dung, nói Đúng. Không thì nói Sai kèm đáp án. Chương trình chính: đặt dung bằng 0, gọi khối hỏi 5 lần, rồi nói số câu đúng. Bước ba, lập trình. Tạo các biến: chọn nhóm Biến số, tạo biến a, biến b, và biến dung: số câu trả lời đúng.

Bước 4

Việc cần làm: khối hoiphepnhan: a, b ngẫu nhiên; hỏi a × b; đúng thì dung tăng 1, sai thì nói đáp án.

536

Chọn nhóm Khối của tôi, bấm Tạo một khối. Gõ tên khối, viết liền không dấu: hoiphepnhan. Bấm OK, rồi kéo khối định nghĩa xuống dưới tờ Việc cần làm.

Giải thích: Khối tự tạo hoiphepnhan gói trọn việc hỏi và chấm một câu, chương trình chính chỉ cần gọi nó.

Bước 5
636

Nhóm Biến số: gắn khối đặt biến thành, chọn a,

Bước 6
736

ô giá trị thả khối lấy ngẫu nhiên, trong nhóm Các phép toán, từ 2 đến 9,

Bước 7
836

thêm khối đặt biến thành, chọn b,

Bước 8
936

thả khối lấy ngẫu nhiên, từ 1 đến 10.

Giải thích: Mỗi lần gọi khối, a và b lấy ngẫu nhiên, nên mỗi câu một đề khác nhau.

Bước 9
1036

Nhóm Cảm biến: gắn khối hỏi và đợi.

Bước 10
1136

Câu hỏi ghép bằng khối kết hợp: lấy một khối kết hợp ra chỗ trống,

Bước 11
1236

ô phải thả biến b, ô trái gõ dấu nhân, có dấu cách hai bên,

Bước 12
1336

lấy thêm một khối kết hợp, ô phải: kéo khối kết hợp vừa làm vào,

Bước 13
1436

ô trái thả biến a, rồi kéo cả khối vào ô câu hỏi: a nhân b.

Giải thích: Hai khối kết hợp ghép a, dấu nhân và b thành câu hỏi, ví dụ 7 nhân 8.

Bước 14
1536

Nhóm Điều khiển: gắn khối nếu, nếu không thì,

Bước 15
1636

điều kiện là phép so sánh bằng,

Bước 16
1736

lấy phép nhân ra chỗ trống,

Bước 17
1836

ô phải thả b,

Bước 18
1936

ô trái thả a, kéo phép nhân vào ô phải của phép so sánh,

Bước 19
2036

ô trái thả khối câu trả lời: câu trả lời bằng a nhân b.

Giải thích: Khối nếu, nếu không thì là rẽ nhánh: câu trả lời bằng a nhân b thì đúng, khác thì sai.

Bước 20
2136

Nhánh đúng: khối thay đổi biến một lượng, chọn dung, giữ số 1,

Bước 21
2236

rồi khối nói trong mấy giây, trong nhóm Hiển thị, gõ Đúng! trong 1 giây.

Bước 22
2336

Nhánh sai cần đáp án: lấy thêm một phép nhân ra chỗ trống,

Bước 23
2436

ô phải thả b,

Bước 24
2536

ô trái thả a,

Bước 25
2636

gắn khối nói trong 2 giây vào nhánh nếu không thì,

Bước 26
2736

lấy khối kết hợp ra chỗ trống, ô trái gõ: Sai! Đáp án là, ô phải kéo phép nhân vào, rồi kéo khối kết hợp vào ô lời nói. Ta vừa làm khối hoiphepnhan: chọn a, b ngẫu nhiên, hỏi a nhân b, đúng thì tăng dung, sai thì nói đáp án.

Giải thích: Sai thì mèo nói đáp án đúng trong 2 giây, học sinh học được ngay chỗ sai.

Bước 27

Việc cần làm: bấm cờ xanh: dung = 0; lặp 5 lần: hoiphepnhan; nói Số câu đúng.

2836

Chọn nhóm Sự kiện, kéo khối Khi bấm vào cờ xanh,

Bước 28
2936

gắn khối đặt biến thành, chọn dung, giữ số 0: mỗi lần chơi đếm lại từ đầu.

Bước 29
3036

Nhóm Điều khiển: gắn khối lặp lại, đổi thành 5 lần,

Bước 30
3136

bên trong, khối hoiphepnhan, trong nhóm Khối của tôi.

Giải thích: Vòng lặp gọi khối hoiphepnhan 5 lần: 5 câu hỏi mà chương trình chính vẫn ngắn, dễ đọc.

Bước 31
3236

Sau vòng lặp, gắn khối nói, trong nhóm Hiển thị,

Bước 32
3336

lấy khối kết hợp ra chỗ trống, ô trái gõ: Số câu đúng, hai chấm,

Bước 33
3436

ô phải thả biến dung, rồi kéo khối kết hợp vào ô lời nói. Ta vừa làm: dung về 0, gọi khối hỏi 5 lần, rồi nói số câu đúng.

Bước 34
3536
Chạy thử

Chạy thử: bấm cờ xanh, trả lời đúng cả 5 câu. Mèo nói: Số câu đúng: 5. Thử trường hợp một đến năm: đúng, sai, gõ chữ, bỏ trống, số có 0 ở đầu. Kết quả: 2 câu đúng. Thử sáu và tám: chơi lại, câu đầu có dấu cách ở cuối, còn lại sai. Kết quả 1: dung đã đếm lại từ 0.

Bước 35
3636

Cả tám trường hợp đều cho kết quả như mong đợi. Ghi kết quả vào bảng kiểm thử.

Bước 36

Bài tập

Bài tập: chọn một vấn đề thật của nhóm, làm đủ năm bước, rồi đăng dự án lên Studio của lớp cho cả lớp xem.

Gỡ lỗi nâng cao Máy tính cầm tay
ZaloCộng đồng hỗ trợ lập trình ScratchCộng đồng hỗ trợ