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

Một phần của tài liệu giáo án môn tin học 11 full một số khái niệm về lập trình và ngôn ngữ lập trình (Trang 30 - 32)

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

Thuật toán Tong_1a

Bước 1. S  1/a; N  0; {Khởi tạo S và N}

Bước 2. N  N + 1;

Bước 3. Nếu N > 100 thì chuyển đến bước 5; Bước 4. S  S + 1/(a + N) rồi quay lại bước 2; Bước 5. Đưa S ra màn hình, rồi kết thúc.

Thuật tốn Tong_1b

Bước 1. S  1/a; N  101; {Khởi tạo S và N}

Bước 2. N  N – 1;

Bước 3. Nếu N < 1 thì chuyển đến bước 5; Bước 4. S  S + 1/(a + N) rồi quay lại bước 2; Bước 5. Đưa S ra màn hình rồi kết thúc.

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). 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). Ta nói cách lặp trong thuật tốn Tong_1a là dạng tiến và trong thuật toán Tong_1b là dạng lùi.

Để mô tả cấu trúc lặp với số lần biết trước, CodeBlocks dùng câu lệnh for như sau: for (<biểu thức khởi tạo>; <biểu thức giới hạn>; <biểu thức tăng giảm>)

<Dãy lệnh>; }

Giải thích: Thực hiện vịng lặp, với số vòng lặp từ biểu thức khởi tạo cho đến biểu thức giới hạn

theo mức tăng là biểu thức tăng giảm.

Lưu ý: khi sử dụng vòng lặp for cần lưu ý các điểm sau đây:

 Các tham số trong vịng lặp for có thể khuyết một hoặc vài (thậm chí là tất cả) tham số. Tuy nhiên, dấu chấm phẩy là ln bắt buộc. Số bước lặp của vịng lặp for sẽ được tính như sau:

 Nếu có nhiều lệnh chịu sự chi phối của for, thì chúng cần được đặt trong dấu khối lệnh.  Ta có thể thực hiện việc khai báo biến trực tiếp bên trong dấu ngoặc đơn của vịng lặp

for.

Ví dụ 1. Xuất ra các giá trị từ 1 đến n. Với n được nhập từ bàn phím.

#include<iostream> using namespace std; int main() { int n, i; cout<<”Nhap n:”; cin>>n;

for (i=0; i<=n;i++) { cout<<i<<endl; };

return 0; }

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.

#include <iostream> using namespace std; int main() { int m,n,s=0; cout << "Nhap m"; cin>>m;

Biểu thức giới hạn – Biểu thức khởi tạo

cout << "\nNhap n"; cin>>n; for(int i=m;i<=n;i++) { if ((i%3==0) || (i%5==0)) { s+=i; } } cout<<"\n Tong S= "<<s; return 0; }

Một phần của tài liệu giáo án môn tin học 11 full một số khái niệm về lập trình và ngôn ngữ lập trình (Trang 30 - 32)

Tải bản đầy đủ (DOCX)

(87 trang)
w