Cấu trúc lặp trong thuật toán trang 89 trong sách giáo khoa tin học lớp 6, NXB Cánh Diều, mời các em tham khảo cùng Bumbii.
Chủ đề F. Giải quyết vấn đề với sự trợ giúp của máy tính. Bài 4. Cấu trúc lặp trong thuật toán.
Vòng lặp
A. Bài toán
Tổ của bạn Trung có bốn thành viên cùng sưu tầm tranh kêu gọi bảo vệ môi trường. Bạn Trung cần tính tổng số tranh cả tổ thu thập được, biết rằng tranh của các thành viên thu thập không trùng nhau.
B. Thuật toán
Đầu vào: Tổ có bốn bạn, mỗi bạn sưu tầm được một số bức tranh.
Đầu ra: Tổng số tranh cả tổ sưu tầm được.
Các bước của thuật toán:
Bước 1. Cho giá trị của Tổng đang có là 0.
Bước 2. Hỏi số tranh của một bạn (bạn thứ nhất), cộng thêm vào Tổng đang có.
Bước 3. Hỏi số tranh của một bạn (bạn thứ hai), cộng thêm vào Tổng đang có.
Bước 4. Hỏi số tranh của một bạn (bạn thứ ba), cộng thêm vào Tổng đang có.
Bước 5. Hỏi số tranh của một bạn (bạn thứ tư), cộng thêm vào Tổng đang có.
Bước 6. Thông báo giá trị của Tổng đang có là tổng số bức tranh cả tổ thu thập được.
Em hãy trả lời các câu hỏi sau:
1) Thuật toán ở B có đúng là thuật toán để giải bài toán nêu ở A không?
2) Những thao tác nào ở B được lặp đi lặp lại và được lặp bao nhiêu lần?
Đáp án:
1) Có. Vì cần tính tổng số tranh cả tổ sưu tầm được, tìm số tranh của 4 bạn trong tổ và cộng dồn lại.
2) Thao tác ở thuật toán B được lặp đi lặp lại: Hỏi số tranh của một bạn, cộng thêm vào Tổng đang có.
Thao tác được lặp lại 4 lần.
LUYỆN TẬP
Bài 1. Cho trước một dãy số có 20 số nguyên. Nhiệm vụ được giao: Cần thông báo lần lượt bình phương của mỗi số nguyên trong dãy đã cho. Em hãy mô tả thuật toán cho nhiệm vụ đó.
Đáp án:
Mô tả thuật toán:
Đầu vào: dãy số gồm 20 số nguyên {a1 … a20}
Đầu ra: Thông báo lần lượt bình phương của mỗi số nguyên trong dãy.
Các bước thuật toán:
Bước 1. đếm = 1
Bước 2. Lặp khi đếm chưa lớn hơn 20:
Thông báo bình phương của đếm
Cộng thêm cho đếm 1 đơn vị
Hết lặp
Bước 3. Thông báo: một dãy mới lần lượt bình phương của mỗi số nguyên.
Bài 2. Em hãy mô tả thuật toán tìm tổng các số tự nhiên liên tiếp bắt đầu từ số 1, đến khi lần đầu tiên nhận được tổng số lớn hơn 500 thì dừng lại và thông báo tổng số đó.
Đáp án:
Mô tả thuật toán:
Đầu vào: dãy số nguyên
Đầu ra: thông báo tổng số của dãy số nguyên lớn hơn 500
Các bước của thuật toán:
Bước 1:
Tổng = 0
Đếm = 0
Bước 2:
Lặp khi tổng chưa lớn hơn 500:
Đếm = đếm + 1
Tổng = tổng + đếm
Hết lặp
Bước 3: Thông báo: Đáp số cần tìm là Tổng
VẬN DỤNG
Một robot có bút trên người (Hình 6), có khả năng nhấc bút lên và hạ bút xuống mặt giấy để vẽ. Robot vẽ trên giấy bằng cách di chuyển khi bút đang hạ xuống (đầu bút chạm mặt giấy). Em hãy mô tả thuật toán để robot này vẽ được một hình vuông có độ dài cạnh là a cm.
Biết rằng robot hiểu một số lệnh sau đây:
– Nhấc bút: nhắc thẳng bút lên để đầu bút không chạm mặt giấy.
– Hạ bút: hạ bút xuống thẳng đứng để đầu bút chạm mặt giấy.
– Di chuyển (d): robot đi thẳng hướng trước mặt một đoạn d cm.
– Quay phải (g): robot đứng tại chỗ quay người sang phải g độ, đầu bút không di chuyển.
Đáp án:
Mô tả thuật toán
Đầu vào: độ dài cạnh hình vuông a cm
Đầu ra: Thông báo: Robot vẽ được hình vuông.
Các bước của thuật toán:
Bước 1: nhập độ dài cạnh hình vuông a cm
Bước 2: đếm = 1
Bước 3:
Lặp với đếm từ 1 đến 4:
Hạ bút
Di chuyển (a)
Nhấc bút
Quay phải (90)
Hết lặp
Bước 4: Thông báo hình vuông robot đã vẽ được.
Câu hỏi tự kiểm tra
Trong các câu sau, câu. nào: đúng?
1) Đầu vào của bài toán có nhiều chỗ giống nhau sẽ yêu cầu thuật toán có cấu trúc lặp.
2) Có cấu trúc lặp trong thuật toán khi mô tả thuật toán thấy có một loạt thao tác kế tiếp nhau được lặp lại.
3) Trong mẫu cấu trúc lặp “Lặp khi <điều kiện lặp> được thoả mãn.. “, thao tác lặp được thực hiện ít nhất một lần.
4) Cấu trúc lặp luôn kết thúc với dấu hiệu “Hết lặp”.
Đáp án:
Đúng: 2), 4).
Sai: 1), 3).
__________***__________
Xem các bài giải khác tại https://bumbii.com/giai-bai-tap-sgk-tin-hoc-lop-6-nxb-canh-dieu/
Xem thêm các bài khác chủ đề F giải quyết vấn đề với sự trợ giúp của máy tính:
Bài 2. Cấu trúc tuần tự trong thuật toán
Bài 3. Cấu trúc rẽ nhánh trong thuật toán
Bài 5. Thực hành về mô tả thuật toán
Thông tin liên hệ & mạng xã hội:
Website: https://bumbii.com/
Facebook: https://www.facebook.com/bumbiiapp
Pinterest: https://www.pinterest.com/bumbiitech
Không bao giờ từ bỏ hy vọng. Cố gắng mỗi ngày.