Sách Giáo Khoa 247

Tin Học 8 - Bài 14: Cấu trúc điều khiển | Kết Nối Tri Thức Với Cuộc Sống

Xem chi tiết nội dung bài Bài 14: Cấu trúc điều khiển và tải xuống miễn phí trọn bộ file PDF Sách Tin Học 8 | Kết Nối Tri Thức Với Cuộc Sống

(Trang 80)

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

• Thể hiện được cấu trúc tuần tự, rẽ nhánh và lặp ở chương trình trong môi trường lập trình trực quan.

An: Ở lớp 6, chúng ta đã biết cách biểu diễn thuật toán bằng cách sử dụng các cấu trúc điều khiển cơ bản. Trong ngôn ngữ lập trình Scratch, có cách nào để biểu diễn các cấu trúc đó không?

Khoa: Giống như hầu hết các ngôn ngữ lập trình, ngôn ngữ lập trình trực quan như Scratch cũng có các khối lệnh tương ứng với các cấu trúc điều khiển cơ bản.

An: Bạn có thể giới thiệu cho tớ cách biểu diễn các cấu trúc tuần tự, rẽ nhánh và lặp trong Scratch không?

1. CẤU TRÚC ĐIỀU KHIỂN CƠ BẢN

Hoạt động 1 Trò chơi Đoán số
Giả sử em cần xây dựng một trò chơi trên máy tính. Trong trò chơi, em cần tìm một số bí mật mà máy tính đã lấy ngẫu nhiên trong khoảng từ 1 đến 100. Em được đoán nhiều lần cho đến khi đoán đúng số bí mật đó. Mỗi lần em đoán sai, máy tính sẽ cho em biết số em đoán là nhỏ hơn hay lớn hơn số bí mật. Em hãy mô tả kịch bản của trò chơi đó dưới dạng một thuật toán.

a) Cấu trúc tuần tự

Dựa trên kịch bản đã xây dựng, em sẽ từng bước lập chương trình của trò chơi này bằng ngôn ngữ lập trình trực quan. Nhận xét rằng, trong trò chơi, chỉ cần sử dụng hai biến số: số thứ nhất do máy tính lấy ngẫu nhiên, được đặt tên là số bí mật và số thứ hai do người chơi đoán và nhập vào máy tính là trả lời. Biến này có sẵn trong Scratch. Để đảm bảo các lệnh đọc, ghi và gán giá trị với hai biến trên hoạt động bình thường, em có thể yêu cầu máy tính gán cho số bí mật một giá trị ngẫu nhiên, sau đó hỏi để nhận vào trả lời một giá trị số từ người chơi, rồi hiển thị hai giá trị đó ra. Kịch bản của trò chơi được mô tả bằng cấu trúc tuần tự dưới dạng liệt kê bằng ngôn ngữ tự nhiên như Hình 14.1a.

 

a) Mô tả thuật toán đọc và hiển thị dữ liệu

b) Chương trình viết bằng ngôn ngữ
lập trình Scratch

Hình 14.1. Thuật toán sử dụng cấu trúc tuần tự

(Trang 81)

Trong ngôn ngữ lập trình trực quan, cấu trúc tuần tự được thể hiện bằng cách lắp ghép các khối lệnh thành phần theo đúng trình tự của các hoạt động, từ trên xuống dưới, như Hình 14.1b.

b) Cấu trúc rẽ nhánh

Sau khi đảm bảo các biến đã hoạt động đúng, em có thể thay thế các thao tác hiển thị trong kịch bản trên bằng thao tác so sánh hai số và cho biết giá trị của biến trả lời bằng, thấp hơn hay cao hơn giá trị của biến số bí mật.

• Nếu trả lời bằng số bí mật thì thông báo:
“HOAN HỘ!”.

• Nếu trả lời nhỏ hơn số bí mật thì thông báo: “Quá thấp”.

• Nếu trả lời lớn hơn số bí mật thì thông báo: “Quá cao”.

Nhận xét rằng ba trường hợp “bằng", “nhỏ hơn” và “lớn hơn" loại trừ lẫn nhau nên không cần kiểm tra cả ba trường hợp đó mà chỉ cần kiểm tra hai lần.

Thuật toán so sánh hai giá trị trả lời và số bí mật có thể được mô tả dưới dạng cấu trúc rẽ nhánh như trong Hình 14.2a bằng ngôn ngữ tự nhiên. Khoảng cách lề trong bản mô tả nhằm xác định hướng thực hiện mệnh lệnh sau mỗi lần kiểm tra. Sơ đồ của thuật toán này được cho trong
Hình 14.2b.

 

a) Mô tả thuật toán so sánh hai giá trị bằng cấu trúc rẽ nhánh

b) Sơ đồ thuật toán so sánh hai giá trị

Hình 14.2. Thuật toán sử dụng cấu trúc rẽ nhánh

Trong ngôn ngữ lập trình trực quan, cấu trúc rẽ nhánh được thể hiện bằng khối lệnh chứa một điều kiện hay một biểu thức lôgic. Tùy tình huống, điều kiện này nhận giá trị đúng hay sai, chương trình sẽ định hướng đến khối lệnh tiếp theo để máy tính thực hiện. Hình 14.3c mô tả đoạn chương trình Scratch so sánh giá trị hai biến trả lời và số bí mật để hiển thị thông báo tương ứng. Cấu trúc rẽ nhánh có hai dạng, dạng khuyết và dạng đầy đủ. Các hình 14.3a và 14.3b lần lượt thể hiện khối lệnh rẽ nhánh khuyết và rẽ nhánh đầy đủ trong ngôn ngữ lập trình Scratch.

 

a) Cấu trúc rẽ nhánh khuyết

b) Cấu trúc rẽ nhánh đầy đủ

c) So sánh và trả lời

Hình 14.3. Các cấu trúc rẽ nhánh và đoạn chương trình trong Scratch

(Trang 82)

c) Cấu trúc lặp

Trong trò chơi, việc đoán số không chỉ được thực hiện một lần mà được người chơi thực hiện lặp lại cho đến khi đoán đúng số bí mật. Mỗi khi người chơi đoán sai, máy tính hỏi lại và câu trả lời mới lại được đem ra so sánh với số bí mật.

Lưu ý rằng việc lặp lại chỉ thực hiện khi người chơi đoán sai. Điều đó cũng có nghĩa rằng người chơi đoán đúng là điều kiện kết thúc vòng lặp.

Thuật toán được mô tả bằng cấu trúc lặp như trong Hình 14.4a và được thể hiện trong ngôn ngữ lập trình trực quan bằng khối lệnh “lặp cho đến khi” (Hình 14.4d).

Trong ngôn ngữ lập trình Scratch, có ba khối lệnh lặp, bao gồm: lặp với số lần định trước (Hình 14.4b), lặp vô hạn (Hình 14.4c), và lặp có điều kiện kết thúc (Hình 14.4d).

a) Sơ đồ cấu trúc lắp có điều kiện

b) Khối lệnh lặp 10 lần

b) Khối lệnh lặp vô hạn

d) Lặp đến khi trả lời = số bí mật

So sánh và nhận xét Máy hỏi lại

Hình 14.4. Cấu trúc lặp

Cấu trúc điều khiển trong ngôn ngữ lập trình trực quan:

• Cấu trúc tuần tự được thể hiện bằng cách lắp ghép các khối lệnh theo trình tự của các hoạt động, từ trên xuống dưới.

• Cấu trúc rẽ nhánh có hai dạng, dạng khuyết và dạng đầy đủ.

• Cấu trúc lặp có ba dạng: lặp với số lần định trước, lặp vô hạn và lặp có điều kiện kết thúc.

Cấu trúc lặp nào sau đây không được cho trước trong các nhóm lệnh của Scratch?

A. Lặp một khối lệnh với số lần định trước.

B. Lặp một khối lệnh vô hạn lần.

C. Lặp với điều kiện được kiểm tra trước khi thực hiện khối lệnh.

D. Lặp với điều kiện được kiểm tra sau khi thực hiện khối lệnh.

(Trang 83)

2. THỰC HÀNH: XÂY DỰNG TRÒ CHƠI ĐOÁN SỐ

Nhiệm vụ

Lập chương trình trò chơi đoán số như đã được mô tả trong Hoạt động 1.

Hướng dẫn

Bước 1. Tạo các biến

- Tạo biến số bí mật. Em có thể tạo biến mới hoặc đổi tên biến có sẵn “my variable" thành “số bí mật".

- Biến trả lời đã có sẵn trong nhóm lệnh “Cảm biến”.

Bước 2. Tạo khung chương trình

Hình 14.5. Khung chương trình

- Tạo khung chương trình gồm 6 khối lệnh lắp ghép với nhau theo cấu trúc tuần tự, từ trên xuống dưới. Mỗi khối lệnh được kéo từ các nhóm tương ứng như được chỉ dẫn trong Hình 14.5, thả vào vùng kịch bản.

Bước 3. Tạo các biểu thức

- Chọn phép toán và điền các giá trị tương ứng để có biểu thức “lấy ngẫu nhiên từ 1 đến 100".

- Chọn phép so sánh "=" và lắp các biến vào chỗ trống để có biểu thức lôgic “trả lời = số bí mật".

- Lắp ghép các biểu thức trên vào vị trí phù hợp trong khung chương trình (Hình 14.6a).

a) Biểu thức trong khối lệnh

b) Khối lệnh rẽ nhánh

Hình 14.6. Tạo các biểu thức trong khối lệnh

(Trang 84)

Bước 4. Tạo khối lệnh rẽ nhánh

- Tương tự như bước 2 và bước 3 để tạo khối lệnh rẽ nhánh với điều kiện “trả lời < số bí mật".

- Chọn từ nhóm “Cảm biến" các khối lệnh “hỏi” và lắp vào vị trí phù hợp như Hình 14.6b.

Bước 5. Hoàn thành chương trình

- Lắp khối lệnh rẽ nhánh vào khung chương trình để được chương trình hoàn chỉnh.

- Đối sánh thuật toán được mô tả dưới dạng sơ đồ với chương trình hoàn chỉnh ở Hình 14.7.

Hình 14.7. Chương trình hoàn chỉnh 

LUYỆN TẬP

Em hãy ghép mỗi đoạn lệnh ở hàng trên với kết quả tương ứng mà đoạn lệnh đó vẽ ở hàng dưới trong Bảng 14.1.

Bảng 14.1. Các đoạn lệnh và kết quả thực hiện

Đoạn lệnh

a

b

c

d

Kết quả 1) Hình ba cạnh 2) Hình bốn cạnh 3) Hình năm cạnh 4) Hình sáu cạnh

(Trang 85)

VẬN DỤNG

1. Em hãy ghép các khối lệnh a, b, c, d vào các vị trí tương ứng 1, 2, 3, 4 ở Hình 14.8 để được thuật toán giải phương trình ax + b = 0 trong ngôn ngữ lập trình Scratch với các giá trị a, b nhập từ bàn phím.

Hình 14.8. Các khối lệnh

2. Ước chung lớn nhất của hai số không thay đổi nếu thay số lớn bằng phần dư trong phép chia của nó cho số bé. Dựa trên nhận xét đó, ước chung lớn nhất của hai số không âm có thể được tính theo thuật toán được biểu diễn bằng sơ đồ khối trong Hình 14.9. Em hãy ghép các khối lệnh Scratch trong Hình 14.10 thành chương trình tính ước chung lớn nhất của hai số nguyên không âm. 

Hình 14.9. Sơ đồ khối

Hình 14.10. Các khối lệnh

 

Xem và tải xuống trọn bộ sách giáo khoa Tin Học 8

Tổng số đánh giá:

Xếp hạng: / 5 sao

Sách giáo khoa liên quan

Ngữ Văn 8 - Tập 1

Sách Lớp 8 NXB Giáo Dục Việt Nam

Ngữ Văn 8 - Tập 2

Sách Lớp 8 NXB Giáo Dục Việt Nam

Tiếng Anh 8 - Tập 1

Sách Lớp 8 NXB Giáo Dục Việt Nam

Tiếng Anh 8 - Tập 2

Sách Lớp 8 NXB Giáo Dục Việt Nam

Toán 8 - Tập 1

Sách Lớp 8 NXB Giáo Dục Việt Nam

Toán 8 - Tập 2

Sách Lớp 8 NXB Giáo Dục Việt Nam

Lịch Sử 8

Sách Lớp 8 NXB Giáo Dục Việt Nam

Địa Lí 8

Sách Lớp 8 NXB Giáo Dục Việt Nam

Sinh Học 8

Sách Lớp 8 NXB Giáo Dục Việt Nam

Công Nghệ 8

Sách Lớp 8 NXB Giáo Dục Việt Nam

Vật Lí 8

Sách Lớp 8 NXB Giáo Dục Việt Nam

Hóa Học 8

Sách Lớp 8 NXB Giáo Dục Việt Nam

Gợi ý cho bạn

dao-duc-1-6

Đạo đức 1

Sách Lớp 1 Cánh Diều

giai-bai-tap-vat-ly-10-1139

Giải bài tập Vật lý 10

Giải bài tập Vật lý lớp 10

vo-bai-tap-tu-nhien-va-xa-hoi-1-44

Vở bài tập TỰ NHIÊN và XÃ HỘI 1

Sách Lớp 1 Kết Nối Tri Thức

bai-tap-mi-thuat-6-70

Bài Tập Mĩ Thuật 6

Sách Lớp 6 Kết Nối Tri Thức

cong-nghe-9-cat-may-970

Công nghệ 9 (Cắt may)

Sách Lớp 9 Chân Trời Sáng Tạo

Nhà xuất bản

canh-dieu-1

Cánh Diều

Bộ sách giáo khoa của Nhà xuất bản Cánh Diều

chan-troi-sang-tao-2

Chân Trời Sáng Tạo

Bộ sách giáo khoa của Nhà xuất bản Chân Trời Sáng Tạo

ket-noi-tri-thuc-voi-cuoc-song-3

Kết Nối Tri Thức Với Cuộc Sống

Sách giáo khoa của nhà xuất bản Kết Nối Tri Thức Với Cuộc Sống

giao-duc-viet-nam-5

Giáo Dục Việt Nam

Bộ Sách Giáo Khoa của Nhà Xuất Bản Giáo Dục Việt Nam

sach-bai-giai-6

Sách Bài Giải

Bài giải cho các sách giáo khoa, sách bài tập

sach-bai-tap-7

Sách Bài Tập

Sách bài tập tất cả các khối lớp

tai-lieu-hoc-tap-9

Tài liệu học tập

Đây là tài liệu tham khảo hỗ trợ trong quá trình học tập

global-success-bo-giao-duc-dao-tao-11

Global Success & Bộ Giáo Dục - Đào Tạo

Bộ sách Global Success & Bộ Giáo Dục - Đào Tạo là sự kết hợp giữa ngôn ngữ Tiếng Anh theo lối giảng dạy truyền thống và cập nhật những phương thức quốc tế

nxb-dai-hoc-su-pham-tphcm-12

NXB - Đại Học Sư Phạm TPHCM

NXB - Đại Học Sư Phạm TPHCM

Chủ đề

Liên Kết Chia Sẻ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.