[r]
Trang 1Giới Thiệu Lập Trình
Cấu Trúc Lặp
TS Lê Nguyên Khôi Trường Đại học Công nghệ, ĐHQGHN
Trang 2Nội Dung
Cấu trúc lặp:
for
Trang 3Cấu Trúc Điều Khiển – Lặp
In ra “teacher is so cool” 10 lần
Số lần lặp có thể không biết
Tương ứng với lặp giới hạn (trên) và lặp không giới hạn (dưới)
Trang 4Cấu Trúc Lặp Giới Hạn
Xét bài toán in ra 3 dấu sao
std::cout << "*";
std::cout << "*";
std::cout << "*";
Xét bài toán in ra 4 dấu sao
std::cout << "*";
std::cout << "*";
std::cout << "*";
std::cout << "*";
Xét bài toán in ra N dấu sao
std::cout << "*"; … ?
Trang 5Cấu Trúc Lặp Giới Hạn
Dựa trên số lần lặp N
Có thể cần một biết đếm bắt đầu từ 0
Khi đó lặp lại hành động, ví dụ
std::cout << "*";
Cho đến khi biết đếm tới giá trị của N
Và dừng lại
Trang 6Cấu Trúc Lặp Giới Hạn for
Cú pháp:
for ( MệnhLệnh1; BiểuThứcLôgic; MệnhLệnh2 ) {
// thân vòng lặp }
MệnhLệnh1 khởi tạo biến đếm (biến điều khiển)
Chỉ thực hiện một lần duy nhất khi bắt đầu lặp
MệnhLệnh2 thay đổi biến đếm (biến điều khiển)
BiểuThứcLôgic đ iều khiển quá trình lặp (với điều
kiện nào thì tiếp tục lặp)
Trang 7Cấu Trúc Lặp Giới Hạn for
Cú pháp:
for ( MệnhLệnh1; BiểuThứcLôgic; MệnhLệnh2 ) {
// thân vòng lặp }
Ý nghĩa:
1 MệnhLệnh1 khởi tạo biến điều khiển
3 Mệnh lệnh trong thân vòng lặp thực hiện
5 Quay lại bước 2
Trang 8Cấu Trúc Lặp Giới Hạn for
Ví dụ:
Với N = 4
Giá trị của n i=0 i=1 i=2 i=3 i=4
Đ iều khiển lặp true true true true false
// i là biến đếm (biến điều khiển)
for (int i = 0; i < N; i = i + 1)
{
std::cout << "*";
}
Trang 9Cấu Trúc Lặp Giới Hạn for – Ví Dụ
for (int i = 0; i < 25; i = i + 1)
{
std::cout << "teacher is so cool\n";
}
for (int i = 1000; i > 0; i = i - 1)
{
tinhDiem();
}
for (int i = 0; i < 5; i = i + 1)
{
chạy 5 vòng quanh sân vận động;
Trang 10Cấu Trúc Lặp Giới Hạn for – Ví Dụ
Cần bao nhiêu biến (ngoại trừ N, được nhập)
Khởi tạo ở đâu
Khi nào thì in ra tổng
Thân vòng lặp
Khi nào thì kết thúc lặp