Bài 7. Câu lệnh lặp
Chia sẻ bởi Cao Nguyen Son |
Ngày 24/10/2018 |
45
Chia sẻ tài liệu: Bài 7. Câu lệnh lặp thuộc Tin học 8
Nội dung tài liệu:
CÂU LỆNH LẶP
BÀI 7
Trong cuộc sống hằng ngày, nhiều hoạt động được lặp đi lặp lại nhiều lần.
Có những hoạt động mà chúng ta thường thực hiện lặp lại với một số lần nhất định và biết trước, chẳng hạn đánh răng mỗi ngày hai lần, mỗi ngày tắm một lần,…Chúng ta còn lặp lại công việc với số lần không thể xác định được: học cho đến khi thuộc bài,nhặt từng cọng rau cho đến khi xong,…
Khi viết chương trình máy tính cũng vậy. Để chỉ dẫn cho máy thực hiện đúng công việc, trong nhiều trường hợp ta cũng cần phải viết lặp lại nhiều câu lệnh thực hiện một phép tính nhất định.
1. Các công việc phải thực hiện nhiều lần
2. Câu lệnh lặp – một lệnh thay cho nhiều lệnh
Ví dụ 1. Giả sử ta cần vẽ ba hình vuông có cạnh 1 đơn vị như hình 33. Mỗi hình vuông là ảnh dịch chuyển của hình bên trái nó một khoảng cách 2 đơn vị. Do đó, ta chỉ cần lặp lại thao tác vẽ hình vuông ba lần.
1
Hình 33
2
2
* Việc vẽ hình có thể thực hiện được bằng thuật toán sau đây:
Bước 1. Vẽ hình vuông ( vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu).
Bước 2. Nếu số hình vuông đã vẻ được ít hơn 3, di chuyển bút vẻ về bên phải hai đơn vị và trở lại bước 1; ngược lại kết thúc thuật toán.
2. Câu lệnh lặp – một lệnh thay cho nhiều lệnh
Riêng bài toán vẽ một hình vuông (hình 34), thao tác chính là vẽ bốn cạnh bằng nhau, hãy lập lại bốn lần thao tác vẽ một đoạn thẳng. Sau mỗi lần vẽ đoạn thẳng, thước kẻ được quay một góc 90 sang phải tại vị trí của bút vẽ.
Thuật toán sau đây sẽ mô tả các bước để vẽ hình vuông:
Bước1. K 0 ( là số đoạn thẳng đã vẽ được)
Bước2. K K+1. Vẽ đoạn thẳng 1 đơn vị độ dài và quay thước
sang phải.
Bước3. Nếu K < 4 thì trở lại bước2; Ngược lại, kết thúc thuật toán.
2. Câu lệnh lặp – một lệnh thay cho nhiều lệnh
Ví dụ 2. Giả sử cần tính tổng của 100 số tự nhiên đầu tiên, tức là tính:
S= 1+2+3+…+100.
Thuật toán sau đây sẽ mô tả việc thực hiện lặp lại phép cộng 100
lần:
Bước1. SUM 0; i 0.
Bước2. I i+1.
Bước3. Nếu i ≤ 100, thì SUM SUM + i và quay lại bước 2.
Bước4. Thông báo kết quả và kết thúc thuật toán.
3. Ví dụ về câu lệnh lặp
Câu lệnh lặp thường gặp trong Pascal có dạng:
For := to do
Trong đó:
- Biến đếm thường có kiếu số nguyên
- Gía trị cuối phải lớn hơn giá trị đầu
- Câu lệnh có thể là câu lệnh đơn giản hay câu lệnh ghép
3. Ví dụ về câu lệnh lặp
Sự hoạt động của lệnh:
Sơ đồ khối
Biến đếm : = Giá trị đầu
Biến đếm : = Giá trị đầu
Giá trị đầu <=Giá trị cuối
Giá trị đầu <=Giá trị cuối
Câu lệnh trong vòng lặp ;
Biến đếm :=Biến đếm + 1;
Câu lệnh trong vòng lặp ;
Biến đếm :=Biến đếm + 1;
False
False
True
True
Bước1: Đầu tiên Biến đếm sẽ nhận giá trị
là
Bước2: Máy kiểm tra điều kiện ≤
Bước3: Nếu điều kiện trên là sai thì ra khỏi vòng lặp FOR. Nếu điều kiện trên là đúng thì được thực hiện, sau đó biến được tăng lên một đơn vị (Biến:=Biến+1) và quay trở lại bước(2).
3. Ví dụ về câu lệnh lặp
Chú ý khi dùng lệnh FOR
- Không được thay đổi trị của biến điều khiển bằng một lệnh trong vòng lặp
Giá trị của biến điều khiển là không xác định khi thoát khỏi vòng lặp
Các biểu thức được ước lượng trước khi vào vòng lặp. Vì vậy số vòng lặp không bị thay đổi dù rằng các biến tham gia trong các biểu thức này có thể bị gán trong vòng lặp.
Ví dụ 1: Chương trình sau sẽ in ra màn hình thứ tự lần lặp:
3. Ví dụ về câu lệnh lặp
Program Lap;
Var i: integer;
Begin
for i:=1 to n do
Writeln(‘Day la lan lap thu’, i);
Readln
End.
3. Ví dụ về câu lệnh lặp
Ví dụ 2: Viết câu lệnh để in ra màn hình 10 chữ “ Mau sac “
For i : = 1 to 10 do writeln( ‘Mau sac’);
- Hãy sử dụng câu lệnh trên để viết chương trình đầy đủ in ra màn hình 10 chữ “ Mau sac “
4. Tính tổng và tích bằng câu lệnh lặp
Ví dụ 1: Chương trình tính tổng N số tự nhiên, với N được nhập từ bàn phím.
Program Tinh tong;
Var N, i: integer;
S: longint;
Begin
Write (‘Nhap N = ‘);
S:=0;
for i:=1 to N do S:=S+1;
Writeln(‘Tong cua ‘,N, ‘so tu nhien dau tien S= ‘, S);
Readln
End.
4. Tính tổng và tích bằng câu lệnh lặp
Ví dụ 2: Ta kí hiệu N! là tích N số tự nhiên đầu tiên:
N! = 1.2.3…N
- Viết chương trình tính N! với N là số tự nhiên được nhập vào từ bàn
phím.
BÀI 7
Trong cuộc sống hằng ngày, nhiều hoạt động được lặp đi lặp lại nhiều lần.
Có những hoạt động mà chúng ta thường thực hiện lặp lại với một số lần nhất định và biết trước, chẳng hạn đánh răng mỗi ngày hai lần, mỗi ngày tắm một lần,…Chúng ta còn lặp lại công việc với số lần không thể xác định được: học cho đến khi thuộc bài,nhặt từng cọng rau cho đến khi xong,…
Khi viết chương trình máy tính cũng vậy. Để chỉ dẫn cho máy thực hiện đúng công việc, trong nhiều trường hợp ta cũng cần phải viết lặp lại nhiều câu lệnh thực hiện một phép tính nhất định.
1. Các công việc phải thực hiện nhiều lần
2. Câu lệnh lặp – một lệnh thay cho nhiều lệnh
Ví dụ 1. Giả sử ta cần vẽ ba hình vuông có cạnh 1 đơn vị như hình 33. Mỗi hình vuông là ảnh dịch chuyển của hình bên trái nó một khoảng cách 2 đơn vị. Do đó, ta chỉ cần lặp lại thao tác vẽ hình vuông ba lần.
1
Hình 33
2
2
* Việc vẽ hình có thể thực hiện được bằng thuật toán sau đây:
Bước 1. Vẽ hình vuông ( vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu).
Bước 2. Nếu số hình vuông đã vẻ được ít hơn 3, di chuyển bút vẻ về bên phải hai đơn vị và trở lại bước 1; ngược lại kết thúc thuật toán.
2. Câu lệnh lặp – một lệnh thay cho nhiều lệnh
Riêng bài toán vẽ một hình vuông (hình 34), thao tác chính là vẽ bốn cạnh bằng nhau, hãy lập lại bốn lần thao tác vẽ một đoạn thẳng. Sau mỗi lần vẽ đoạn thẳng, thước kẻ được quay một góc 90 sang phải tại vị trí của bút vẽ.
Thuật toán sau đây sẽ mô tả các bước để vẽ hình vuông:
Bước1. K 0 ( là số đoạn thẳng đã vẽ được)
Bước2. K K+1. Vẽ đoạn thẳng 1 đơn vị độ dài và quay thước
sang phải.
Bước3. Nếu K < 4 thì trở lại bước2; Ngược lại, kết thúc thuật toán.
2. Câu lệnh lặp – một lệnh thay cho nhiều lệnh
Ví dụ 2. Giả sử cần tính tổng của 100 số tự nhiên đầu tiên, tức là tính:
S= 1+2+3+…+100.
Thuật toán sau đây sẽ mô tả việc thực hiện lặp lại phép cộng 100
lần:
Bước1. SUM 0; i 0.
Bước2. I i+1.
Bước3. Nếu i ≤ 100, thì SUM SUM + i và quay lại bước 2.
Bước4. Thông báo kết quả và kết thúc thuật toán.
3. Ví dụ về câu lệnh lặp
Câu lệnh lặp thường gặp trong Pascal có dạng:
For
Trong đó:
- Biến đếm thường có kiếu số nguyên
- Gía trị cuối phải lớn hơn giá trị đầu
- Câu lệnh có thể là câu lệnh đơn giản hay câu lệnh ghép
3. Ví dụ về câu lệnh lặp
Sự hoạt động của lệnh:
Sơ đồ khối
Biến đếm : = Giá trị đầu
Biến đếm : = Giá trị đầu
Giá trị đầu <=Giá trị cuối
Giá trị đầu <=Giá trị cuối
Câu lệnh trong vòng lặp ;
Biến đếm :=Biến đếm + 1;
Câu lệnh trong vòng lặp ;
Biến đếm :=Biến đếm + 1;
False
False
True
True
Bước1: Đầu tiên Biến đếm sẽ nhận giá trị
là
Bước2: Máy kiểm tra điều kiện
Bước3: Nếu điều kiện trên là sai thì ra khỏi vòng lặp FOR. Nếu điều kiện trên là đúng thì
3. Ví dụ về câu lệnh lặp
Chú ý khi dùng lệnh FOR
- Không được thay đổi trị của biến điều khiển bằng một lệnh trong vòng lặp
Giá trị của biến điều khiển là không xác định khi thoát khỏi vòng lặp
Các biểu thức được ước lượng trước khi vào vòng lặp. Vì vậy số vòng lặp không bị thay đổi dù rằng các biến tham gia trong các biểu thức này có thể bị gán trong vòng lặp.
Ví dụ 1: Chương trình sau sẽ in ra màn hình thứ tự lần lặp:
3. Ví dụ về câu lệnh lặp
Program Lap;
Var i: integer;
Begin
for i:=1 to n do
Writeln(‘Day la lan lap thu’, i);
Readln
End.
3. Ví dụ về câu lệnh lặp
Ví dụ 2: Viết câu lệnh để in ra màn hình 10 chữ “ Mau sac “
For i : = 1 to 10 do writeln( ‘Mau sac’);
- Hãy sử dụng câu lệnh trên để viết chương trình đầy đủ in ra màn hình 10 chữ “ Mau sac “
4. Tính tổng và tích bằng câu lệnh lặp
Ví dụ 1: Chương trình tính tổng N số tự nhiên, với N được nhập từ bàn phím.
Program Tinh tong;
Var N, i: integer;
S: longint;
Begin
Write (‘Nhap N = ‘);
S:=0;
for i:=1 to N do S:=S+1;
Writeln(‘Tong cua ‘,N, ‘so tu nhien dau tien S= ‘, S);
Readln
End.
4. Tính tổng và tích bằng câu lệnh lặp
Ví dụ 2: Ta kí hiệu N! là tích N số tự nhiên đầu tiên:
N! = 1.2.3…N
- Viết chương trình tính N! với N là số tự nhiên được nhập vào từ bàn
phím.
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: Cao Nguyen Son
Dung lượng: |
Lượt tài: 1
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)