Bài 4. Cấu trúc lặp trong thuật toán | Tin Học 6 | Chủ đề F. Giải quyết vấn đề với sự trợ giúp của máy tính - Lớp 6 - Cánh Diều

Cấu trúc lặp trong thuật toán


Học xong bài này, em sẽ:

• Biết được cấu trúc lặp trong thuật toán là gì và khi nào trong thuật toán có cấu trúc lặp .

• Thể hiện được cấu trúc lặp khi biết và khi không biết số lần lặp cần làm. 

1. Vòng lặp

Hoạt động

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.

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 ở Hình 1b có đúng là thuật toán để giải bài toán nêu ở Hình 1a không?

2) Những thao tác nào ở Hình 1b được lặp đi lặp lại và được lặp bao nhiêu lần?

Trong nhiều việc làm thường ngày và nhiều nhiệm vụ ta cần giải quyết, có những thao tác được thực hiện lặp đi lăp lại nhiều lần. Cần phải có cách mô tả ngắn gọn việc lặp đi lặp lại một hay nhiều thao tác trong một quy trình.

Khi có một (hay nhiều) thao tác được thực hiện lặp lại một số lần liên tiếp trong quá trình thực hiện thuật toán thì cần dùng cấu trúc lặp.

2. Biến đếm và thể hiện cấu trúc lặp khi biết trước số lần lặp

Trong quá trình thực hiện thuật toán mô tả Hình 1b, số tranh của một bạnTổng đang có có giá trị thay đổi. Hai đại lượng này là biến trong mô tả thuật toán.

Biến: đại lượng được đặt tên, dùng để lưu trữ giá trị và giá trị có thể thay đổi trong quá trình thực hiện thuật toán, chương trình.

Để thể hiện cấu trúc là khi biết trước số lần lặp ta cần dùng một biến để đếm số lần lặp, cũng gọi là biến đếm.

Giả sử dùng thuật toán cộng dồn (tương tự như thuật toán ở Hình 1b) để tính tổng số bức tranh sưu tầm được của lớp 6A gồm 35 học sinh. Có thể mô tả thuật toán đó như ở Hình 2, sử dụng biến đếm có giá trị là số tự nhiên. Biến đếm cho biết khi nào thì đã lặp đủ 35 lần thao tác cần lặp.

hinh-anh-bai-4-cau-truc-lap-trong-thuat-toan-11035-0

Thuật toán cộng dồn 1 (để tính tổng số tranh)

Đầu vào: Lớp 6A có 35 học sinh.

               Số tranh sưu tầm được của mỗi học sinh lớp 6A trong trường.

Đầu ra: Tổng số bức tranh lớp 6A sưu tầm được.

Các bước của thuật toán:

Bước 1. Tổng đang có = 0

Bước 2. Lặp với đếm từ 1 đến 35:

            a) Hỏi số tranh sưu tầm được của một bạn, gọi là số tranh của một bạn

            b) Cộng thêm số tranh của một bạn vào Tổng đang có

            Hết lặp

Bước 3. Thông báo: Đáp số cần tìm là Tổng đang có

Hình 2. Một thuật toán có cấu trúc lặp với số lần lặp biết trước 

Trong cách mô tả trên, khi đếm là 1 thao tác a của Bước 2 được thực hiện rồi đến thao tác b, đây là lần thứ nhất hai thao tác này được thực hiện. Tiếp theo, đếm là 2, cũng hai thao tác a và b được thực hiện tuần tự... Cứ như vậy cho đến khi đếm là 35 thì hai thao tác này được thực hiện lần cuối trong cấu trúc lặp đó.

Cần phải có từ khóa "Hết lặp" để đánh dấu những thao tác nào sẽ được lặp. Sau khi kết thúc vòng lặp, ta trở lại thực hiện tuần tự mỗi bước một lần. Mô tả thuật toán ở Hình 2 trên đây đã sử dụng mẫu A (Hình 3).

Chú ý: Các thao tác trong vòng lặp được thực hiện tuần tự theo trình tự liệt kê.

hinh-anh-bai-4-cau-truc-lap-trong-thuat-toan-11035-1

Hình 3. Mẫu cấu trúc lặp biết trước số lần lặp

3. Thể hiện cấu trúc lặp khi không biết trước số lần lặp

Có những trường hợp không thể biết trước số lần lập cần làm. Chẳng hạn trong ví dụ trên, có thể không biết trước bao nhiêu bạn có tranh sưu tầm. Để tính tổng số tranh của lớp 6A, vẫn có thể dùng được cách cộng dồn, tuy nhiên ta chỉ hỏi số tranh của những bạn đã sưu tầm. Rõ ràng, hai thao tác lặp chỉ được thực hiện với điều kiện chưa hỏi hết những bạn sưu tầm tranh.

Để thể hiện cấu trúc lặp khi không biết trước số lần lặp cần làm, ta dùng mẫu B (Hình 4). Điểm cần chú ý duy nhất là cần xác định điều kiện thực hiện các thao tác trong phòng lặp hay còn gọi là điều kiện lặp.

hinh-anh-bai-4-cau-truc-lap-trong-thuat-toan-11035-2

Hình 4. Mẫu cấu trúc lặp không biết trước số lần lặp

Ta viết lại mô tả thuật toán cộng dồn trong trường hợp không biết trước danh sách sưu tầm tranh có bao nhiêu bạn, điều kiện lặp trong tình huống này là: còn bạn sưu tầm tranh chưa được hỏi về số tranh (Hình 5).

hinh-anh-bai-4-cau-truc-lap-trong-thuat-toan-11035-3

Thuật toán cộng dồn 2 (tính tổng số tranh, không biết có bao nhiêu bạn sưu tầm tranh)

Đầu vào: Số tranh của mỗi bảng sưu tầm tranh.

Đầu ra: Tổng số bức tranh học sinh lớp 6A sưu tầm được.

Các bước của thuật toán:

Bước 1. Tổng đang có = 0

Bước 2. Lặp khi chưa hỏi hết học sinh sưu tầm tranh:

            a) Hỏi số tranh sưu tầm được của một bạn, gọi là số tranh của một bạn

            b) Cộng thêm số tranh của một bạn vào Tổng đang có

            Hết lặp

Bước 3. Thông báo: Đáp số cần tìm là Tổng đang có

Hình 5. Một thuật toán có cấu trúc lặp không biết trước số lần lặp

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ụ đó.

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ố đó.

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.

hinh-anh-bai-4-cau-truc-lap-trong-thuat-toan-11035-4

Hình 6. Một robot có bút vẽ

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.

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 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 khi <điều kiện lặp> được thỏa 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".

TÓM TẮT BÀI HỌC

* Khi có một loạt thao tác được lặp lại giống nhau thì cần dùng cấu trúc lặp.

* Khi biết số lần lặp, thể hiện cấu trúc lặp có dùng biến để đếm số lần lặp.

* Khi không biết trước số lần lặp, thể hiện cấu trúc lặp có dùng điều kiện lặp.

Tin tức mới


Đánh giá

Bài 4. Cấu trúc lặp trong thuật toán | Tin Học 6 | Chủ đề F. Giải quyết vấn đề với sự trợ giúp của máy tính - Lớp 6 - Cánh Diều

Tổng số sao của bài viết là: 5 trong 1 đánh giá
Xếp hạng: 5 / 5 sao

Bình Luận

Để Lại Bình Luận Của Bạn

Tin Học 6

  1. Chủ đề A. Máy tính và cộng đồng
  2. Chủ đề B. Mạng máy tính và Internet
  3. Chủ đề C. Tổ chức lưu trữ, tìm kiếm và trao đổi thông tin
  4. Chủ đề D. Đạo đức, pháp luật và văn hóa trong môi trường số
  5. Chủ đề E. Ứng dụng tin học
  6. Chủ đề F. Giải quyết vấn đề với sự trợ giúp của máy tính

Tin tức mới

Bộ Sách Lớp 6

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

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 & 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ế

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

Cánh Diều

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

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

Sách Cánh Diều

Lớp 1

Sách giáo khoa dành cho lớp 1

Lớp 6

Sách giáo khoa dành cho lớp 6

Lớp 5

Sách giáo khoa dành cho lớp 5

Lớp 4

Sách giáo khoa dành cho lớp 4

Lớp 2

Sách giáo khoa dành cho lớp 2

Lớp 3

Sách giáo khoa dành cho lớp 3

Lớp 7

Sách giáo khoa dành cho lớp 7

Lớp 8

Sách giáo khoa dành cho lớp 8

Lớp 9

Sách giáo khoa dành cho lớp 9

Lớp 10

Sách giáo khoa dành cho lớp 10

Lớp 11

Sách giáo khoa dành cho lớp 11

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.