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 ta còn lặp lại những công việc với số lần không thể xác định trước.. Có những hoạt
Trang 1Bài 7: CÂU LỆNH LẶP
1 Các công việc phải thực hiện nhiều lần.
Trong cuộc sống hằng ngày, nhiều hoạt động được thực hiện lặp đi lặp lại nhiều lần
Ví dụ:
1 Mỗi ngày học bài 2 lần.
2 Học bài cho đến khi thuộc.
3 Tôi đến trường mỗi ngày 2 lần.
4 Tôi ăn cơm đến khi no.
5 Tôi làm việc mỗi ngày 8h.
Đọc sgk
Trang 2Bài 7: CÂU LỆNH LẶP
1 Các công việc phải thực hiện 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 ta còn lặp lại những công
việc với số lần không thể xác định trước.
Ví dụ: 1 Mỗi ngày học bài 2 lần.
2 Học bài cho đến khi thuộc.
3 Tôi đến trường mỗi ngày 2 lần.
4 Tôi ăn cơm đến khi no.
5 Tôi làm việc mỗi ngày 8h.
Hoạt động nào lặp lại với số lần nhất định và
biết trước?
Lặp với số lần không thể xác định trước.
Trang 3Bài 7: CÂU LỆNH LẶP
1 Các công việc phải thực hiện 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 ta còn lặp lại những công
việc với số lần không thể xác định trước.
Ví dụ:
1 Mỗi ngày học bài 2 lần.
2 Học bài cho đến khi thuộc.
3 Tôi đến trường mỗi ngày 2 lần.
4 Tôi ăn cơm đến khi no.
5 Tôi làm việc mỗi ngày 8h.
Hãy lấy ví dụ về các hoạt động lặp lại với số lần nhất định và các hoạt động lặp với số lần chưa biết trước?
Để máy tính thực hiện đúng công việc, ta cần phải viết như thế
nào?
Trang 4Bài 7: CÂU LỆNH LẶP
1 Các công việc phải thực hiện 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 ta còn lặp lại những công việc với số lần không thể xác định trước.
Khi viết chương trình máy tính Để chỉ dẫn cho máy tính
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 Mỗi ngày học bài 2 lần.
2 Học bài cho đến khi thuộc.
3 Tôi đến trường mỗi ngày 2 lần.
4 Tôi ăn cơm đến khi no.
5 Tôi làm việc mỗi ngày 8h.
Ví dụ:
Trang 52.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(SGK) 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ị.
Bài 7: CÂU LỆNH LẶP
2 đơn vị 2 đơn vị
Vẽ hình vuông thứ
2 theo điều kiện gì? Thao tác vẽ hình
vuông lặp lại mấy lần?
Ta chỉ cần lặp lại thao tác vẽ hình vuông ba lần.
1 Các công việc phải thực hiện nhiều lần.
Trang 62.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(SGK)
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ị
Thuật toán :
Bài 7: CÂU LỆNH LẶP
2 đơn vị
1 Vẽ hình vuông (vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu)
2 Di chuyển bút vẽ về bên phải 2 đơn vị
3 Vẽ hình vuông (vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu)
4 Di chuyển bút vẽ về bên phải 2 đơn vị
5 Vẽ hình vuông (vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu)
2 đơn vị
1 Các công việc phải thực hiện nhiều lần.
Trang 7Thuật toán :
Bài 7: CÂU LỆNH LẶP
Ta cần dịch chuyển bút vẽ về bên phải 2 đơn vị
để vẽ hình vuông tiếp theo không?
2 đơn vị
1 Vẽ hình vuông (vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu)
2 Di chuyển bút vẽ về bên phải 2 đơn vị
3 Vẽ hình vuông (vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu)
4 Di chuyển bút vẽ về bên phải 2 đơn vị
5 Vẽ hình vuông (vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu)
2 đơn vị
Quan sát các thao tác và cho biết thao tác nào lặp
lại?
Ví dụ 1 Giả sử ta cần vẽ ba hình vuông có cạnh 1 đơn vị như hình 33(SGK)
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ị
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.
Trang 8Thuật toán :
Bài 7: CÂU LỆNH LẶP
2 đơn vị
1 Vẽ hình vuông (vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu)
2 Di chuyển bút vẽ về bên phải 2 đơn vị
3 Vẽ hình vuông (vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu)
4 Di chuyển bút vẽ về bên phải 2 đơn vị
5 Vẽ hình vuông (vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu)
2 đơn vị
Thao tác vẽ hình vuông và di chuyển bút vẽ về bên phải 2 đơn vị được lặp lại
Hai thao tác trên lặp lại trong trường hợp nào?
Thao tác vẽ hình vuông và di chuyển bút vẽ về bên phải 2 đơn vị được lặp lại nếu số hình vuông đã vẽ được ít hơn 3
Ví dụ 1 Giả sử ta cần vẽ ba hình vuông có cạnh 1 đơn vị như hình 33(SGK)
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ị
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.
Trang 9Bài 7: CÂU LỆNH LẶP
1 Vẽ hình vuông (vẽ liên tiếp bốn cạnh
và trở về đỉnh ban đầu)
2 Di chuyển bút vẽ về bên phải 2 đơn vị
3 Vẽ hình vuông (vẽ liên tiếp bốn cạnh
và trở về đỉnh ban đầu)
4 Di chuyển bút vẽ về bên phải 2 đơn vị
5 Vẽ hình vuông (vẽ liên tiếp bốn cạnh
và trở về đỉnh ban đầu)
Bước 1: Vẽ hình vuông (vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu)
Viết lại thành
1 bước
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 2 đơn vị và trở lại bước 1; ngược lại, kết thúc thuật toán
Ví dụ 1 Giả sử ta cần vẽ ba hình vuông có cạnh 1 đơn vị như hình 33(SGK)
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ị
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.
Thuật toán :
Trang 10Bài 7: CÂU LỆNH LẶP
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 2 đơn vị và trở lại bước 1; ngược lại, kết thúc thuật toán
Hãy nêu thuật toán vẽ
ba hình vuông có cạnh 1 đơn vị, 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ị?Máy tính vẽ
hình vuông như thế nào?
Ví dụ 1 Giả sử ta cần vẽ ba hình vuông có cạnh 1 đơn vị như hình 33(SGK)
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ị
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.
Thuật toán :
Trang 11Ví dụ 1: (sgk/56)
Bài 7: CÂU LỆNH LẶP
Xét bài toán vẽ một hình vuông
Thao tác chính của
vẽ hình vuông là gì?
Thao tác chính của vẽ hình vuông là vẽ 4 cạnh bằng nhau, hay lặp lại 4 lần thao tác vẽ một đoạn thẳng
Vẽ 4 đoạn thẳng này như thế nào
để có được một hình vuông?
Sau mỗi lần vẽ đoạn thẳng, thước kẻ được quay một góc 900 sang phải tại
vị trí của bút vẽ
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.
Trang 12Bước 2: k ← k + 1.
Bước 2: k ← k + 1 Vẽ đoạn thẳng 1 đơn vị độ dài và quay thước 900
sang phải
Thực hiện vẽ đoạn thẳng 1 đơn vị độ dài và quay thước
90 0 sang phải khi
nào?
Ví dụ 1: (sgk/56)
Xét bài toán vẽ một hình vuông
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.
Trang 13Bước 3: Nếu k < 4 thì trở lại bước 2 Ngược lại, kết thúc thuật toán.
Chú ý: Biến k được sử dụng như là biến đếm để ghi lại số cạnh đã vẽ được
Thuật toán :
Gọi k là số đoạn thẳng đã vẽ được
Ví dụ 1: (sgk/56)
Xét bài toán vẽ một hình vuông
2.Câu lệnh lặp - một lệnh thay cho nhiều lệnh.
1 Các công việc phải thực hiện nhiều lần.
Trang 14Ví dụ 2. Tính tổng của 100 số tự nhiên đầu tiên:
S = 1 + 2 + 3 + + 100
Ví dụ 1: (sgk/56)
2.Câu lệnh lặp - một lệnh thay cho nhiều lệnh.
1 Các công việc phải thực hiện nhiều lần.
Bài 7: CÂU LỆNH LẶP
Nêu INPUT, OUTPUT của bài toán?
INPUT: Dãy 100 số nguyên tự nhiên đầu tiên: 1, 2, , 100
OUTPUT: Giá trị của tổng 1 + 2 + + 100
Hoạt động chính khi giải bài toán trên là
gì?
Hoạt động chính khi giải bài toán trên là thực hiện phép cộng
Viết thuật toán tính tổng 100
số nguyên đầu
tiên?
Trang 15Ví dụ 2. Tính tổng của 100 số tự nhiên đầu tiên:
S = 1 + 2 + 3 + + 100
Ví dụ 1: (sgk/56)
2.Câu lệnh lặp - một lệnh thay cho nhiều lệnh.
1 Các công việc phải thực hiện nhiều lần.
Bài 7: CÂU LỆNH LẶP
Thuật toán:
Bước 1: SUM ←0; i ←0
Bước 2: i ←i+1
Bước 3: Nếu i ≤100, thì SUM ← SUM +i và quay lại bước 2
Bước 4: Thông báo kết quả và kết thúc thuật toán
Thuật toán trên mô tả việc thực hiện lặp lại phép cộng 100 lần
Thực hiện lặp lại phép cộng bao nhiêu lần?
Cách mô tả các hoạt động lặp trong thuật toán như trong ví dụ trên được gọi là cấu trúc lặp
Mọi ngôn ngữ lập trình đều có “cách” để chỉ thị cho máy tính thực hiện cấu trúc lặp với một câu lệnh Đó là các câu lệnh lặp
Trang 16Ví dụ 2. (sgk/57)
Ví dụ 1: (sgk/56)
2.Câu lệnh lặp - một lệnh thay cho nhiều lệnh.
1 Các công việc phải thực hiện nhiều lần.
Trang 173.Ví dụ về câu lệnh lặp
2.Câu lệnh lặp - một lệnh thay cho nhiều lệnh.
1 Các công việc phải thực hiện nhiều lần.
Bài 7: CÂU LỆNH LẶP
Đọc sgk
Câu lệnh lặp trong Pascal thường có dạng như thế nào?
Câu lệnh lặp trong Pascal thường có dạng:
for <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
Trong đó: for, to, do : các từ khóa
biến đếm : biến kiểu nguyên.
giá trị đầu, giá trị cuối : là các giá trị nguyên
Việc rửa chén trên sẽ thực hiện lặp bao nhiêu lần?
Sẽ thực hiện lặp lại:
10 – 1 + 1 = 10 lần
Xác định giá trị đầu, giá trị cuối, câu lệnh?
Trang 183.Ví dụ về câu lệnh lặp
2.Câu lệnh lặp - một lệnh thay cho nhiều lệnh.
1 Các công việc phải thực hiện nhiều lần.
Bài 7: CÂU LỆNH LẶP
Câu lệnh lặp trong Pascal thường có dạng:
for <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
Trong đó: for, to, do : các từ khóa
biến đếm : biến kiểu nguyên.
giá trị đầu, giá trị cuối : là các giá trị nguyên
là một vòng lặp Số vòng lặp là biết trước và bằng
giá trị đầu – giá trị cuối +1
Khi thực hiện rửa chén, ban đầu chén sẽ nhận giá trị là bao nhiêu?
Ban đầu chen sẽ nhận giá trị
là 1 (là giá trị đầu)Sau khi chén thứ 1 rửa xong thì biến đếm chen sẽ tự động tăng thêm một đơn vị cho đến khi chen nhận gía trị 10 ( giá trị cuối)
Trang 193.Ví dụ về câu lệnh lặp
2.Câu lệnh lặp - một lệnh thay cho nhiều lệnh.
1 Các công việc phải thực hiện nhiều lần.
Bài 7: CÂU LỆNH LẶP
Câu lệnh lặp trong Pascal thường có dạng:
for <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
Trong đó: for, to, do : các từ khóa
biến đếm : biến kiểu nguyên.
giá trị đầu, giá trị cuối : là các giá trị nguyên
do?
Trang 203.Ví dụ về câu lệnh lặp
2.Câu lệnh lặp - một lệnh thay cho nhiều lệnh.
1 Các công việc phải thực hiện nhiều lần.
Bài 7: CÂU LỆNH LẶP
Câu lệnh lặp trong Pascal thường có dạng:
for <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
Trong đó: for, to, do : các từ khóa
biến đếm : biến kiểu nguyên.
giá trị đầu, giá trị cuối : là các giá trị nguyên
Khi thực hiện, ban đầu biến đếm sẽ nhận giá trị là giá trị đầu, sau mỗi vòng lặp, biến đếm được tự động tăng thêm một đơn vị cho đến khi bằng giá trị cuối
Câu lệnh lặp sẽ thực hiện câu lệnh nhiều lần, mỗi lần là một vòng lặp Số vòng lặp là biết trước và bằng
giá trị đầu – giá trị cuối +1
Trang 213.Ví dụ về câu lệnh lặp
2.Câu lệnh lặp - một lệnh thay cho nhiều lệnh.
1 Các công việc phải thực hiện nhiều lần.
Bài 7: CÂU LỆNH LẶP
Câu lệnh lặp trong Pascal thường có dạng:
for <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
Khi thực hiện, ban đầu
biến điếm sẽ nhận giá
trị là giá trị đầu, sau
mỗi vòng lặp, biến
điếm được tự động
tăng thêm một đơn vị
cho đến khi bằng giá
trị cuối
True (đúng) False (sai)
Biến đếm : = Biến đếm + 1
Biến đếm : = giá trị đầu
Lệnh Giá trị đầu <= Giá trị cuối
Trang 223.Ví dụ về câu lệnh lặp
2.Câu lệnh lặp - một lệnh thay cho nhiều lệnh.
1 Các công việc phải thực hiện nhiều lần.
Bài 7: CÂU LỆNH LẶP
Câu lệnh lặp trong Pascal thường có dạng:
for <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
Thực hiện chạy tiếp chương trình với i bằng 3,4?
Trang 233.Ví dụ về câu lệnh lặp
2.Câu lệnh lặp - một lệnh thay cho nhiều lệnh.
1 Các công việc phải thực hiện nhiều lần.
Bài 7: CÂU LỆNH LẶP
Câu lệnh lặp trong Pascal thường có dạng:
for <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
Ví dụ 4:
Để in một chữ “O” trên màn hình, ta có thể sử dụng lệnh: writeln ( ‘O’ );
Chương trình ghi nhận các vị trí của một quả trứng rơi từ trên cao xuống, ta
có thể lặp lại lệnh trên nhiều lần (ví dụ, 20 lần)
readln;
End
Trang 243.Ví dụ về câu lệnh lặp
2.Câu lệnh lặp - một lệnh thay cho nhiều lệnh.
1 Các công việc phải thực hiện nhiều lần.
Bài 7: CÂU LỆNH LẶP
Câu lệnh lặp trong Pascal thường có dạng:
for <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
Ví dụ 4: (sgk/58)
Dịch và chạy chương trình này, ta sẽ thấy kết quả như sau:
Trang 253.Ví dụ về câu lệnh lặp
2.Câu lệnh lặp - một lệnh thay cho nhiều lệnh.
1 Các công việc phải thực hiện nhiều lần.
Bài 7: CÂU LỆNH LẶP
Câu lệnh lặp trong Pascal thường có dạng:
for <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
readln;
End
Câu lệnh ghép
Trang 26Trong ví dụ 4, các câu lệnh đơn giản writeln(‘O’)
và delay(100) được đặt trong hai từ khóa begin và
and để tạo thành một câu lệnh ghép trong pascal
Từ đây về sau, khi nói câu lệnh, ta có thể hiểu đó
là câu lệnh đơn hoặc câu lệnh ghép.
3.Ví dụ về câu lệnh lặp
2.Câu lệnh lặp - một lệnh thay cho nhiều lệnh.
1 Các công việc phải thực hiện nhiều lần.
Bài 7: CÂU LỆNH LẶP
Câu lệnh lặp trong Pascal thường có dạng:
for <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
Trang 27- Học nội dung ghi vở.
- Làm các bài tập 1, 2, 3, 4, 5 sách giáo khoa trang 60, 61.
- Chuẩn bị nội dung còn lại của bài học: Tính tổng và tích
bằng câu lệnh lặp.