Chào mừng quý vị đến với website của ...
Quý vị chưa đăng nhập hoặc chưa đăng ký làm thành viên, vì vậy chưa thể tải được các tài liệu của Thư viện về máy tính của mình.
Nếu chưa đăng ký, hãy nhấn vào chữ ĐK thành viên ở phía bên trái, hoặc xem phim hướng dẫn tại đây
Nếu đã đăng ký rồi, quý vị có thể đăng nhập ở ngay phía bên trái.
Nếu chưa đăng ký, hãy nhấn vào chữ ĐK thành viên ở phía bên trái, hoặc xem phim hướng dẫn tại đây
Nếu đã đăng ký rồi, quý vị có thể đăng nhập ở ngay phía bên trái.
Bài 14. Cấu trúc điểu khiển
(Tài liệu chưa được thẩm định)
Nguồn: Bạch Kim
Người gửi: Ngô Văn Chinh (trang riêng)
Ngày gửi: 11h:04' 20-10-2023
Dung lượng: 1.3 MB
Số lượt tải: 0
Nguồn: Bạch Kim
Người gửi: Ngô Văn Chinh (trang riêng)
Ngày gửi: 11h:04' 20-10-2023
Dung lượng: 1.3 MB
Số lượt tải: 0
Số lượt thích:
0 người
BÀI 14. CẤU TRÚC ĐIỂU KHIỂN
Trang bìa
Trang bìa
Ảnh
BÀI 14. CẤU TRÚC ĐIỂU KHIỂN
TIN HỌC 8
A. Khởi động
- Khởi động
Ảnh
- Khởi động:
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?
B. Hình thành kiến thức mới
1. Cấu trúc điều khiển
Ảnh
1. Cấu trúc điều khiển
- HĐ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.
- Kiến thức mới
- Kiến thức mới:
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, đặt tên là số bí mật. 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.
Ảnh
a. Cấu trúc tuần tự
+ tiếp (a. Cấu trúc tuần tự)
Để đả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.1 a.
Ảnh
+ tiếp (a. Cấu trúc tuần tự)
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.
Ảnh
b. Cấu trúc rẽ nhánh (- Kiến thức mới)
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.
Ảnh
b. Cấu trúc rẽ nhánh
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”.
+ tiếp ( b. Cấu trúc rẽ nhánh)
Ảnh
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.
+ tiếp ( b. Cấu trúc rẽ nhánh)
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.
Ảnh
+ tiếp ( b. Cấu trúc rẽ nhá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 logic. Tuỳ 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.
+ tiếp ( b. Cấu trúc rẽ nhánh)
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.
Ảnh
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.
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.
Ảnh
c. Cấu trúc lặp
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.
+ tiếp ( c. Cấu trúc 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).
Ảnh
- Kết luận
- Kết luận:
Ảnh
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 hỏi
- Câu hỏi:
Bài tập trắc nghiệm
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 Scrath?
A. Lặp một khối lệnh với so 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.
2. Thực hành: Xây dựng trò chơi đoán số
2. Thực hành: Xây dựng trò chơi đoán số
Ảnh
Hình vẽ
- 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 (2. Thực hành: Xây dựng trò chơi đoán số)
Ảnh
Hướng dẫn:
+ Bước 1. Tạo các biến
Ảnh
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 (2. Thực hành: Xây dựng trò chơi đoán số)
Ảnh
Ảnh
Hướng dẫn:
+ Bước 2: Tạo 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 H14.5, thả vào vùng kịch bản.
+ Bước 3 (2. Thực hành: Xây dựng trò chơi đoán số)
Ảnh
Ảnh
Hướng dẫ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).
- Hình 14.6 (2. Thực hành: Xây dựng trò chơi đoán số)
Ảnh
+ Bước 4 (2. Thực hành: Xây dựng trò chơi đoán số)
Ảnh
Ảnh
Hướng dẫn:
+ 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 (2. Thực hành: Xây dựng trò chơi đoán số)
Ảnh
Ảnh
Hướng dẫn:
+ 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 (2. Thực hành: Xây dựng trò chơi đoán số)
Ảnh
Luyện tập
- Luyện tập
- 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.
Ảnh
Vận dụng
- Câu 1 (- Vận dụng)
Ảnh
Câu 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.
- Câu 2 (- Vận dụng)
Ả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 và 14.10 (- Câu 2)
Ảnh
Dặn dò
- Dặn dò
Ảnh
Dặn dò:
Ôn lại bài vừa học. Làm bài tập về nhà trong SBT. Chuẩn bị bài sau: "Bài 15. Gỡ lỗi".
- Cảm ơn
Ảnh
Trang bìa
Trang bìa
Ảnh
BÀI 14. CẤU TRÚC ĐIỂU KHIỂN
TIN HỌC 8
A. Khởi động
- Khởi động
Ảnh
- Khởi động:
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?
B. Hình thành kiến thức mới
1. Cấu trúc điều khiển
Ảnh
1. Cấu trúc điều khiển
- HĐ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.
- Kiến thức mới
- Kiến thức mới:
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, đặt tên là số bí mật. 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.
Ảnh
a. Cấu trúc tuần tự
+ tiếp (a. Cấu trúc tuần tự)
Để đả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.1 a.
Ảnh
+ tiếp (a. Cấu trúc tuần tự)
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.
Ảnh
b. Cấu trúc rẽ nhánh (- Kiến thức mới)
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.
Ảnh
b. Cấu trúc rẽ nhánh
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”.
+ tiếp ( b. Cấu trúc rẽ nhánh)
Ảnh
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.
+ tiếp ( b. Cấu trúc rẽ nhánh)
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.
Ảnh
+ tiếp ( b. Cấu trúc rẽ nhá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 logic. Tuỳ 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.
+ tiếp ( b. Cấu trúc rẽ nhánh)
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.
Ảnh
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.
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.
Ảnh
c. Cấu trúc lặp
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.
+ tiếp ( c. Cấu trúc 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).
Ảnh
- Kết luận
- Kết luận:
Ảnh
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 hỏi
- Câu hỏi:
Bài tập trắc nghiệm
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 Scrath?
A. Lặp một khối lệnh với so 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.
2. Thực hành: Xây dựng trò chơi đoán số
2. Thực hành: Xây dựng trò chơi đoán số
Ảnh
Hình vẽ
- 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 (2. Thực hành: Xây dựng trò chơi đoán số)
Ảnh
Hướng dẫn:
+ Bước 1. Tạo các biến
Ảnh
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 (2. Thực hành: Xây dựng trò chơi đoán số)
Ảnh
Ảnh
Hướng dẫn:
+ Bước 2: Tạo 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 H14.5, thả vào vùng kịch bản.
+ Bước 3 (2. Thực hành: Xây dựng trò chơi đoán số)
Ảnh
Ảnh
Hướng dẫ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).
- Hình 14.6 (2. Thực hành: Xây dựng trò chơi đoán số)
Ảnh
+ Bước 4 (2. Thực hành: Xây dựng trò chơi đoán số)
Ảnh
Ảnh
Hướng dẫn:
+ 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 (2. Thực hành: Xây dựng trò chơi đoán số)
Ảnh
Ảnh
Hướng dẫn:
+ 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 (2. Thực hành: Xây dựng trò chơi đoán số)
Ảnh
Luyện tập
- Luyện tập
- 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.
Ảnh
Vận dụng
- Câu 1 (- Vận dụng)
Ảnh
Câu 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.
- Câu 2 (- Vận dụng)
Ả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 và 14.10 (- Câu 2)
Ảnh
Dặn dò
- Dặn dò
Ảnh
Dặn dò:
Ôn lại bài vừa học. Làm bài tập về nhà trong SBT. Chuẩn bị bài sau: "Bài 15. Gỡ lỗi".
- Cảm ơn
Ảnh
 
↓ CHÚ Ý: Bài giảng này được nén lại dưới dạng ZIP và có thể chứa nhiều file. Hệ thống chỉ hiển thị 1 file trong số đó, đề nghị các thầy cô KIỂM TRA KỸ TRƯỚC KHI NHẬN XÉT ↓
Các ý kiến mới nhất