No8 - Cấu trúc lặp for trong C/C++

1.    Lệnh lặp for

a.    Cú pháp

for (dãy biểu thức 1 ; điều kiện lặp ; dãy biểu thức 2) 
{ khối lệnh lặp; 
[break;]
[continue;]
}

b.   Thực hiện

Khi gặp câu lệnh for trình tự thực hiện của chương trình như sau:
-        Thực hiện dãy biểu thức 1 (thường là lệnh gán 1 giá trị cho 1 biến khởi đầu).
-        Kiểm tra điều kiện lặp, nếu đúng thì thực hiện khối lệnh lặp.
-    Thực hiện dãy biểu thức 2 => quay lai kiểm tra điều kiện lặp.
-    Lặp lại quá trình trên cho đến bước nào đó việc kiểm tra điều kiện lặp cho kết quả sai thì dừng.

[break]

Dùng để thoát ra khỏi (chấm dứt) các câu lệnh cấu trúc, chương trình sẽ tiếp tục thực hiện các câu lệnh tiếp sau câu lệnh vừa thoát.

[continue]


Lệnh dùng để quay lại đầu vòng lặp mà không chờ thực hiện hết các lệnh trong khối lệnh lặp.

2.    Ví dụ minh hoạ

Ví dụ 1 : Nhân 2 số nguyên theo phương pháp Ấn độ

void main()
{
   long m, n, kq;                                                // Các số cần nhân và kết quả kq
   cout << “Nhập m và n: “ ; cin >> m >> n ;
   for (kq = 0 ; m ; m >>= 1, n <<= 1) if (m%2) kq += n ;
   cout << “m nhân n =” << kq ;
}

Ví dụ 2 : Tính tổng của dãy các số từ 1 đến 100.

Dùng một biến đếm i được khởi tạo từ 1, và một biến kq để chứa tổng. Mỗi bước lặp chương trình cộng i vào kq và sau đó tăng i lên 1 đơn vị. Chương trình còn lặp khi nào i còn chưa vượt qua 100. Khi i lớn hơn 100 chương trình dừng. 
void main()
{
   int i, kq = 0;
   for (i = 1 ; i <= 100 ; i ++) kq += i ;
   cout << "Tổng = " << kq;
}

Ví dụ 3 : In ra màn hình dãy số lẻ bé hơn một số n nào đó được nhập vào từ bàn phím.

Dùng một biến đếm i được khởi tạo từ 1, mỗi bước lặp chương trình sẽ in i sau đó tăng i lên 2 đơn vị. Chương trình còn lặp khi nào i còn chưa vượt qua n. Khi i lớn hơn n chương trình dừng. 
void main()
{
   int n, i ;
   cout << "Hãy nhập n = " ; cin >> n ;
   for (i = 1 ; i < n ; i += 2) cout << i << '\n' ;
}

Post a Comment

0 Comments