Tài nguyên của bài · 2 file · 4 KB — tải về rồi tải lên Scratch khi làm theo video
nen.svg, phim.sprite3
Đăng nhập để tải tài nguyên
Nâng cao · Mức E · Bài 12

Máy tính cầm tay

Mục tiêu: Làm máy tính cầm tay: bấm phím trên sân khấu để gõ số, cộng, trừ, nhân, chia, phím bằng hiện kết quả, phím C xoá.

Em sẽ học gì

  • Nội dung trong bài: mỗi phím là một bản sao, xếp thành lưới 16 phím bằng hai vòng lặp lồng nhau.
  • Mỗi phím tự biết mình là phím gì nhờ tên trang phục, và chạy khi được bấm.
  • Ghép số bằng khối kết hợp: bấm 1 rồi bấm 2 thành 12.
  • Phím chỉ báo tin cho sân khấu, sân khấu nhớ số thứ nhất, phép tính, rồi tính kết quả.
Kết quả cần đạt
Kết quả cần đạt: bấm cờ xanh để chạy thử.
198

Ta bắt đầu với một dự án trống. Hình ảnh đã có sẵn thành các file. Phông nền là thân máy tính có khung màn hình, và nhân vật Phim có 16 trang phục, mỗi trang phục là một phím. Bấm nút chọn phông nền ở góc dưới bên phải, chọn Tải phông nền lên, rồi chọn file nen.

Bước 1
298

Quay lại thẻ Code. Bấm nút chọn nhân vật, chọn Tải nhân vật lên, rồi chọn file phim: nhân vật Phim, đã có sẵn tên.

Bước 2
398

Mở thẻ Trang phục để xem các phím. Mỗi trang phục là một phím. Tên trang phục chính là chữ trên phím: 7, 8, 9; phép chia tên là hai chấm, phép nhân tên là chữ x.

Bước 3
498

Quay lại thẻ Code.

Bước 4
598

Bắt đầu với nhân vật Phim.

Bước 5

Việc cần làm: ẩn; lặp 4 hàng × 4 phím: tạo bản sao, đổi trang phục, sang phải; hết hàng xuống dưới.

698

Sơ đồ: ẩn, tới chỗ phím đầu tiên, trang phục 7. Chưa đủ 4 hàng: x về đầu hàng; chưa đủ 4 phím: tạo bản sao, trang phục kế tiếp, x tăng 60. Đủ 4 phím thì y giảm 56, xuống hàng dưới, cho tới khi đủ 4 hàng.

Bước 6
798

Chọn nhóm Sự kiện, kéo khối Khi bấm vào cờ xanh: chương trình chạy khi bấm cờ xanh,

Bước 7
898

Nhóm Hiển thị, khối ẩn: phím gốc không hiện, chỉ các bản sao hiện,

Bước 8
998

Nhóm Chuyển động, khối đi tới điểm x y, x bằng âm 90, y bằng 66: chỗ phím đầu tiên, góc trên bên trái.

Bước 9
1098

Nhóm Hiển thị, khối đổi trang phục thành, chọn 7: phím đầu tiên là phím 7.

Giải thích: Phím gốc ẩn đi: nó chỉ là cái khuôn, 16 phím ta thấy là 16 bản sao của nó.

Bước 10
1198

Nhóm Điều khiển, khối lặp lại, gõ 4: vòng ngoài, mỗi lần một hàng.

Bước 11
1298

Bên trong, khối đặt x bằng, âm 90: về đầu hàng.

Giải thích: Vòng ngoài lặp 4 lần, mỗi lần làm một hàng phím.

Bước 12
1398

Khối lặp lại thứ hai, gắn dưới khối đặt x, gõ 4: vòng trong, mỗi lần một phím.

Bước 13
1498

Bên trong, khối tạo bản sao của bản thân tôi: in một phím ở chỗ đang đứng,

Bước 14
1598

khối trang phục kế tiếp: phím sau có chữ khác,

Bước 15
1698

khối thay đổi x một lượng, gõ 60: sang phải một phím.

Giải thích: Bản sao sinh ra giống hệt nhân vật gốc lúc đó: cùng chỗ, cùng trang phục. Đổi trang phục sau khi tạo thì phím sau mang chữ khác.

Bước 16
1798

Sau vòng trong, vẫn trong vòng ngoài: khối thay đổi y một lượng, âm 56: xuống hàng dưới. Ta vừa làm: hai vòng lặp lồng nhau tạo 4 hàng, mỗi hàng 4 phím, mỗi phím một trang phục theo thứ tự.

Giải thích: Vòng trong xếp xong 4 phím của một hàng thì phím gốc lùi xuống 56 bước, chuẩn bị cho hàng mới.

Bước 17
1898

Kéo khối Khi tôi bắt đầu là một bản sao, nhóm Điều khiển: chạy riêng trong từng bản sao,

Bước 18
1998

gắn khối hiện: bản sao hiện ra.

Giải thích: Phím gốc ẩn nên bản sao sinh ra cũng ẩn theo: mỗi bản sao phải tự hiện ra.

Bước 19
2098
Chạy thử

Chạy thử: bấm cờ xanh. 16 phím hiện ra, xếp thành 4 hàng, đúng như máy tính.

Bước 20
2198

Tạo biến: nhóm Biến số, bấm Tạo một biến, đặt tên là phim: phím vừa được bấm.

Bước 21

Việc cần làm: bấm vào phím: phim = tên trang phục, phát tin bam, phím tối đi một chút.

2298

Nhóm Sự kiện, kéo khối Khi bấm vào nhân vật này,

Giải thích: Khối khi bấm vào nhân vật này chạy ở đúng bản sao bị bấm: bấm phím 7 thì chỉ bản sao phím 7 chạy.

Bước 22
2398

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

Bước 23
2498

ô giá trị thả khối trang phục, nhóm Hiển thị, chọn tên thay cho số: tên trang phục là chữ của phím.

Giải thích: Khối trang phục tên cho biết tên trang phục đang mặc. Mỗi phím mặc một trang phục, nên tên đó chính là chữ của phím.

Bước 24
2598

Nhóm Sự kiện, khối phát tin, Tin nhắn mới, tên là bam: báo cho sân khấu có phím được bấm.

Giải thích: Phát tin bam báo cho sân khấu biết có phím vừa được bấm. Sân khấu đọc biến phim để biết là phím nào.

Bước 25
2698

Nhóm Hiển thị, khối đặt hiệu ứng bằng, chọn độ sáng, gõ âm 40: phím tối đi,

Bước 26
2798

khối đợi, gõ 0.15 giây,

Bước 27
2898

rồi khối bỏ các hiệu ứng đồ hoạ: phím sáng lại. Ta vừa làm: bấm vào phím nào thì biến phim nhớ chữ của phím đó, phát tin bam, và phím nháy tối một chút.

Giải thích: Phím tối đi 0,15 giây rồi sáng lại, trông như phím bị ấn xuống: người bấm biết máy đã nhận phím.

Bước 28
2998
Chạy thử

Chạy thử: bấm cờ xanh, bấm phím 7: ô phim hiện 7, phím tối đi rồi sáng lại. Bấm phím nhân: phim là x. Bấm C: phim là C.

Bước 29
3098

Giờ đến phần tính toán. Chọn Sân khấu ở góc dưới bên phải. Tạo các biến. Biến manhinh: số đang hiện trên màn hình máy tính, biến so1: số thứ nhất của phép tính, biến phep: phép tính đã chọn, và biến moi: bằng 1 khi sắp gõ một số mới. Ô manhinh trên sân khấu: bấm chuột phải, chọn chế độ đọc lớn, rồi kéo ô vào khung màn hình của máy tính.

Bước 30

Việc cần làm: cờ xanh thì màn hình về 0, moi = 1.

3198

Kéo khối Khi bấm vào cờ xanh,

Bước 31
3298

khối đặt biến thành, chọn manhinh, giữ số 0,

Bước 32
3398

thêm khối đặt biến thành, chọn moi, gõ 1.

Giải thích: Biến moi bằng 1 nghĩa là: phím số bấm tiếp theo bắt đầu một số mới, thay cho số đang hiện.

Bước 33

Việc cần làm: nhận bam: phím số thì ghép vào màn hình; phép tính thì nhớ; = thì tính; C thì xoá.

3498

Sơ đồ khi nhận tin bam. Phím số: ghép vào số trên màn hình. Phím cộng trừ nhân chia: nhớ số thứ nhất và phép tính. Phím bằng: báo tính kết quả. Phím C: màn hình về 0.

Bước 34
3598

Kéo khối Khi nhận tin, nhóm Sự kiện, chọn bam: chạy mỗi khi có phím được bấm. Phần tính để ở sân khấu: chỉ có một sân khấu nên mỗi lần bấm tính một lần. Để trong phím thì 16 bản sao cùng nhận tin, tính 16 lần.

Bước 35
3698

Nhóm Điều khiển, khối nếu thì,

Bước 36
3798

điều kiện là khối chứa ký tự, nhóm Các phép toán,

Bước 37
3898

ô sau thả biến phim, ô trước gõ 0 1 2 3 4 5 6 7 8 9: phim là một chữ số.

Giải thích: Khối chứa ký tự đúng khi chữ phim nằm trong chuỗi 0 1 2 đến 9, tức là phím vừa bấm là phím số.

Bước 38
3998

Bên trong, khối nếu thì, nếu không thì,

Bước 39
4098

điều kiện bằng, bên phải gõ 1,

Bước 40
4198

bên trái biến moi: đang bắt đầu số mới.

Bước 41
4298

Khi đó, khối đặt biến thành, chọn manhinh,

Bước 42
4398

thả biến phim: số mới là chữ số vừa bấm,

Bước 43
4498

khối đặt biến thành, chọn moi, giữ số 0: đã gõ xong chữ số đầu.

Bước 44
4598

Nhánh nếu không thì: khối đặt biến thành, chọn manhinh,

Bước 45
4698

ô giá trị thả khối kết hợp, nhóm Các phép toán,

Bước 46
4798

ô sau biến phim,

Bước 47
4898

ô trước biến manhinh. Ta vừa làm: phím số thì bắt đầu số mới, hoặc ghép thêm chữ số vào sau số đang có.

Giải thích: Nếu moi bằng 1 thì chữ số vừa bấm thay cho số cũ, rồi moi về 0. Nếu không, chữ số được ghép vào sau số đang có.

Giải thích: Khối kết hợp nối hai chữ thành một: manhinh đang là 1, bấm 2 thì kết hợp thành 12, chứ không cộng thành 3.

Bước 48
4998
Chạy thử

Chạy thử: bấm cờ xanh, bấm 1, 2, 3: màn hình hiện 1, rồi 12, rồi 123.

Bước 49
5098

Dưới khối nếu thứ nhất, thêm khối nếu thì,

Bước 50
5198

điều kiện chứa ký tự,

Bước 51
5298

ô sau biến phim, ô trước gõ cộng, trừ, chữ x, hai chấm: phim là một phép tính.

Bước 52
5398

Khi đó, khối đặt biến thành, chọn so1,

Bước 53
5498

thả biến manhinh: nhớ số thứ nhất,

Bước 54
5598

khối đặt biến, chọn phep,

Bước 55
5698

thả biến phim: nhớ phép tính,

Bước 56
5798

và khối đặt biến, chọn moi, gõ 1: số tiếp theo là số thứ hai.

Giải thích: Bấm phép tính thì nhớ số đang hiện vào so1, nhớ phép vào phep, và moi bằng 1 để số thứ hai bắt đầu từ đầu.

Bước 57
5898

Thêm khối nếu thì,

Bước 58
5998

điều kiện bằng, bên phải gõ dấu bằng,

Bước 59
6098

bên trái biến phim,

Bước 60
6198

khi đó khối phát tin, tin nhắn mới tên là tinh: báo tính kết quả,

Bước 61
6298

rồi khối đặt biến, chọn moi, gõ 1.

Giải thích: Bấm phím bằng thì phát tin tinh: một script riêng sẽ tính kết quả. Sau đó moi bằng 1 để gõ phép tính mới.

Bước 62
6398

Thêm khối nếu thì cuối cùng,

Bước 63
6498

điều kiện bằng, bên phải gõ chữ C hoa,

Bước 64
6598

bên trái biến phim,

Bước 65
6698

khi đó khối đặt biến thành, chọn manhinh, giữ số 0,

Bước 66
6798

và khối đặt biến, chọn moi, gõ 1. Ta vừa làm: phép tính thì nhớ số thứ nhất và phép, phím bằng thì phát tin tinh, phím C thì xoá.

Giải thích: Bấm phím C thì màn hình về 0 và moi bằng 1: xoá hết, làm phép tính mới.

Bước 67

Việc cần làm: nhận tinh: theo phep, manhinh = so1 cộng / trừ / nhân / chia manhinh.

6898

Sơ đồ khi nhận tin tinh: bốn khối nếu, mỗi phép tính một khối.

Bước 68
6998

Kéo khối Khi nhận tin, chọn tinh.

Bước 69
7098

Khối nếu thì,

Bước 70
7198

điều kiện bằng, bên phải gõ dấu cộng,

Bước 71
7298

bên trái biến phep,

Bước 72
7398

thì khối đặt biến thành, chọn manhinh,

Bước 73
7498

ô giá trị thả khối cộng, nhóm Các phép toán,

Bước 74
7598

ô phải biến manhinh,

Bước 75
7698

ô trái biến so1.

Giải thích: Nếu phép đã nhớ là phép cộng thì màn hình hiện so1 cộng với số đang hiện, tức là số thứ hai.

Bước 76
7798

Thêm khối nếu thì,

Bước 77
7898

điều kiện bằng, gõ dấu trừ,

Bước 78
7998

bên trái biến phep,

Bước 79
8098

thì khối đặt biến thành, chọn manhinh,

Bước 80
8198

thả khối trừ,

Bước 81
8298

ô phải biến manhinh,

Bước 82
8398

ô trái biến so1.

Bước 83
8498

Khối nếu thì,

Bước 84
8598

điều kiện bằng, gõ chữ x: tên của phím nhân,

Bước 85
8698

bên trái biến phep,

Bước 86
8798

thì khối đặt biến thành, chọn manhinh,

Bước 87
8898

thả khối nhân,

Bước 88
8998

ô phải biến manhinh,

Bước 89
9098

ô trái biến so1.

Bước 90
9198

Khối nếu thì cuối,

Bước 91
9298

điều kiện bằng, gõ hai chấm: tên của phím chia,

Bước 92
9398

bên trái biến phep,

Bước 93
9498

thì khối đặt biến thành, chọn manhinh,

Bước 94
9598

thả khối chia,

Bước 95
9698

ô phải biến manhinh,

Bước 96
9798

ô trái biến so1. Ta vừa làm: theo phép đã nhớ, tính so1 với số đang hiện, rồi đưa kết quả lên màn hình.

Giải thích: Trừ và chia phải đúng thứ tự: so1 là số bấm trước, nằm ô trái; số đang hiện là số bấm sau, nằm ô phải.

Bước 97
9898
Chạy thử

Xong rồi! Chạy thử: bấm cờ xanh, bấm 1, 2, cộng, 7, bằng: màn hình hiện 19. Bấm 9, trừ, 15, bằng: âm 6. 8 nhân 25, bằng: 200. 7 chia 4, bằng: 1,75. Bấm C: màn hình về 0.

Bước 98

Các khối mới trong bài

  • Khối khi bấm vào nhân vật này: chạy ở đúng bản sao được bấm.
  • Khối trang phục tên: cho biết tên trang phục đang mặc.
  • Khối kết hợp: nối hai chữ thành một: 1 và 2 thành 12.
  • Khối chứa ký tự: đúng khi chữ sau nằm trong chữ trước.

Kỹ thuật lập trình đã học

  • Về kỹ thuật lập trình, bài này ta học: mỗi phím là một bản sao, tên trang phục cho biết phím nào được bấm.
  • Phím chỉ báo tin, sân khấu tính toán, mỗi lần bấm chỉ tính một lần.
  • Ghép chữ số bằng khối kết hợp: 1 với 2 thành 12, chứ không cộng thành 3.
  • Nhớ trạng thái bằng biến: so1, phep và moi cho máy biết đang làm tới đâu.

Bài tập

Bài tập mở rộng: thêm phím dấu chấm để gõ số thập phân; chia cho 0 thì màn hình hiện chữ Lỗi; và tính liên tiếp, như 2 cộng 3 cộng 4.

Chương trình: Ôn bảng nhân Game Bóng bàn hai người chơi
ZaloCộng đồng hỗ trợ lập trình ScratchCộng đồng hỗ trợ