logo

Soạn Tin 11 Bài 10 ngắn nhất trang 42, 42,... 47, 48: Cấu trúc lặp

Hướng dẫn Soạn Tin 11 Bài 10: Cấu trúc lặp bám sát nội dung SGK Tin học 11 trang 42, 42,… 47, 48 theo chương trình SGK Tin học 11. Tổng hợp lý thuyết Tin học 11 đầy đủ, giúp các bạn nắm vững nội dung bài học.

Bài 10: Cấu trúc lặp trang 42, 42,… 47, 48 SGK Tin học 11


1. Lặp

Với a là số nguyên và a > 2, xét các bài toán sau đây:

Soạn Tin 11 Bài 10 ngắn nhất trang 42, 42,... 47, 48: Cấu trúc lặp


Nhận xét:

- Với cả hai bài toán, dễ thấy cách để tính tổng S có nhiều điểm tương tự:

Soạn Tin 11 Bài 10 ngắn nhất trang 42, 42,... 47, 48: Cấu trúc lặp

- Việc cộng này được lặp lại một số lần.

+ Đối với bài toán 1, số lần lặp là 100 và việc cộng vào tổng S sẽ kết thúc khi đã thực hiện việc cộng 100 lần.

+ Đối với bài toán 2, số lần lặp chưa biết trước nhưng việc cộng vào tổng S sẽ kết thúc khi điều kiện:

Soạn Tin 11 Bài 10 ngắn nhất trang 42, 42,... 47, 48: Cấu trúc lặp

Tóm lại:

- Trong một số thuật toán có những thao tác phải thực hiện lặp đi lặp lại một số lần. Một trong các đặc trưng của máy tính là có khả năng thực hiện hiệu quả các thao tác lặp.

- Cấu trúc lặp mô tả thao tác lặp và được phân biệt hai loại là lặp với số lần biết trước và lặp với số lần chưa biết trước.

- Các ngôn ngữ lập trình đều có các câu lệnh để mô tả cấu trúc điều khiển lặp.


2. Lặp có số lần lặp biết trước và câu lệnh for-do

Có hai thuật toán Tong_1a và Tong_1b để giải bài toán 1 như sau:

Soạn Tin 11 Bài 10 ngắn nhất trang 42, 42,... 47, 48: Cấu trúc lặp

Một số lưu ý:

- Số lần lặp của cả hai thuật toán trên là biết trước và như nhau (100 lần).

- Trong thuật toán Tong_1a, giá trị N khi bắt đầu tham gia vòng lặp là 1 và sau mỗi lần lặp N tăng lên 1 cho đến khi N > 100 (N = 101) thì kết thúc lặp (thực hiện đủ 100 lần) →Cách lặp trong thuật toán Tong_1a là dạng tiến.

- Trong thuật toán Tong_1b, giá trị N bắt đầu tham gia vòng lặp là 100 và sau mỗi lần lặp N giảm đi 1 cho đến khi N < 1 (N = 0) thì kết thúc lặp (thực hiện đủ 100 lần) → Cách lặp trong thuật toán Tong_1b là dạng lùi.

a. Cấu trúc lặp với số lần biết trước

Để mô tả cấu trúc lặp với số lần biết trước, Pascal dùng câu lệnh for-do với hai dạng tiến và lùi như sau:

- Dạng lặp tiến:

for < biến đếm > := < giá trị đầu > to < giá trị cuối > do < câu lệnh >; ​

- Dạng lặp lùi:

for < biến đếm > := < giá trị cuối > downto < giá trị đầu > do < câu lệnh >; ​

Trong đó:

- Biến đếm là biến đơn, thường có kiểu nguyên.

- Giá trị đầu, giá trị cuối là các biểu thức cùng kiểu với biến đếm và giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối. Nếu giá trị đầu lớn hơn giá trị cuối thì vòng lặp không được thực hiện.

- Hoạt động của lệnh for-do:

+ Ở dạng lặp tiến, câu lệnh viết sau từ khóa do được thực hiện tuần tự, với biến đếm lần lượt nhận giá trị từ giá trị đầu đến giá trị cuối.

+ Ở dạng lặp lùi, câu lệnh viết sau từ khóa do được thực hiện tuần tự, với giá trị của biến đếm từ giá trị cuối đến giá trị đầu.

Chú ý 1: Giá trị của biến đếm được điều chỉnh tự động, vì vậy câu lệnh viết sau do không được thay đổi giá trị biến đếm.

b. Một số ví dụ minh họa

Ví dụ 1. Sau đây là hai chương trình cài đặt các thuật toán Tong_1a và Tong_1b.

Chương trình cài đặt thuật toán Tong_1a:

PHP:

Soạn Tin 11 Bài 10 ngắn nhất trang 42, 42,... 47, 48: Cấu trúc lặp

Ví dụ 2. Chương trình sau thực hiện việc nhập từ bàn phím hai số nguyên dương M và N ( M < N ), tính và đưa ra màn hình tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ M đến N.

Chương trình cài đặt:

PHP:

Soạn Tin 11 Bài 10 ngắn nhất trang 42, 42,... 47, 48: Cấu trúc lặp

3. Lặp với số lần chưa biết trước và câu lệnh while-do

Thuật toán Tong_2:

Soạn Tin 11 Bài 10 ngắn nhất trang 42, 42,... 47, 48: Cấu trúc lặp

Như vậy, việc lặp với số lần chưa biết trước sẽ chỉ kết thúc khi một điều kiện cho trước được thoả mãn.

a. Cấu trúc lặp với số lần chưa biết trước

Để mô tả cấu trúc lặp như vậy, Pascal dùng câu lệnh while-do có dạng:

while < điều kiện > do < câu lệnh >;

Trong đó:

- Điều kiện là biểu thức quan hệ hoặc lôgic;

- Câu lệnh là một câu lệnh của Pascal.

Việc thực hiện lệnh while-do được thể hiện trên sơ đồ ở hình 1 dưới đây:

Soạn Tin 11 Bài 10 ngắn nhất trang 42, 42,... 47, 48: Cấu trúc lặp

Hình 1. Sơ đồ lặp với số lần lặp chưa biết trước

b. Một số ví dụ minh họa

Ví dụ 3. Sau đây là chương trình cài đặt thuật toán Tong_2.

Soạn Tin 11 Bài 10 ngắn nhất trang 42, 42,... 47, 48: Cấu trúc lặp

Hình 2. Sơ đồ khối của thuật toán Tong_2

PHP:

Soạn Tin 11 Bài 10 ngắn nhất trang 42, 42,... 47, 48: Cấu trúc lặp

 

Ví dụ 4. Tìm ước chung lớn nhất (UCLN) của hai số nguyên dương M và N.

Thuật toán tìm ước chung lớn nhất:

Soạn Tin 11 Bài 10 ngắn nhất trang 42, 42,... 47, 48: Cấu trúc lặp


Hình 3. Sơ đồ khối của thuật toán tìm ước chung lớn nhất

Chương trình sau thể hiện thuật toán tìm ước chung lớn nhất:

PHP:

Soạn Tin 11 Bài 10 ngắn nhất trang 42, 42,... 47, 48: Cấu trúc lặp

Chú ý 2: Các câu lệnh trong vòng lặp thường được lặp lại nhiều lần, vì vậy để tăng hiệu quả của chương trình thì những thao tác không cần lặp lại nên đưa ra ngoài vòng lặp.

>>> Xem toàn bộ: Soạn Tin 11 ngắn nhất

-----------------------------

Trên đây Toploigiai đã cùng các bạn Soạn Tin 11 Bài 10: Cấu trúc lặp trong bộ SGK Tin học 11. Chúng tôi hi vọng các bạn đã có kiến thức hữu ích khi đọc bài viết này. Chúc các bạn học tốt!

icon-date
Xuất bản : 15/10/2022 - Cập nhật : 31/07/2023