- Câu lệnh được thực hiện ít nhất 1 lần, sau đó kiểm tra điều kiện?. - Số lần lặp lại chưa biết trước?[r]
Trang 21 Các hoạt động lặp với số lần chưa biết trước
2 Ví dụ về lệnh lặp với số lần chưa biết trước
Cú pháp: While <điều kiện> do <Câu lệnh>
Ví dụ 5: trang 69,70 SGK Tin học Quyển 3
Để tính tổng T = 1 + ½ + 1/3 + … + 1/100, ta có những câu lệnh nào để thể hiện vòng lặp?
Sử dụng câu lệnh for … do Sử dụng câu lệnh while … do
Ta có thể sử dụng câu lệnh for … do đã học
T:=0;
For i:=1 to 100 do T:=T + 1/i;
Writeln (T);
T:=0; i:=1;
While i<100 do begin T:=T + 1/i; i:=i + 1
Writeln (T);
Tuy nhiên sử dụng câu lênh while …do cũng cho cùng kết quả
Ta có thể sử dụng câu lệnh while … do thay cho câu lệnh for … do
Trang 31 Các hoạt động lặp với số lần chưa biết trước
2 Ví dụ về lệnh lặp với số lần chưa biết trước
3 Lặp vô hạn lần – Lỗi lập trình cần tránh
Qua thực tế, các em hãy nêu tác dụng của máy tính trong đời sống?
Các em hãy nêu khả năng làm việc của máy tính so với con người?
Máy tính có thể thực hiện số lần lặp không thời hạn được không?
- Máy tính có thể thực hiện số lần lặp không hạn chế
- Giúp con người thực hiện được các công việc từ đơn giản đến phức tạp
- Máy tính có khả năng tính toán nhanh, làm
việc bền bỉ và không biết “mệt mỏi”
Trang 41 Các hoạt động lặp với số lần chưa biết trước
2 Ví dụ về lệnh lặp với số lần chưa biết trước
3 Lặp vô hạn lần – Lỗi lập trình cần tránh
- Máy tính có thể thực hiện số lần lặp không hạn chế
- Giúp con người thực hiện được các công việc từ đơn giản đến phức tạp
- Máy tính có khả năng tính toán nhanh, làm
việc bền bỉ và không biết “mệt mỏi”
Ví dụ:
Var a: interger;
Begin a:=5;
while a<6 do writeln (‘A’);
End
? Khi viết câu lệnh lặp có nên để máy tính thực hiện những vòng lặp vô hạn không?
- Khi thực hiện vòng lặp, điều kiện trong câu lệnh phải được thay đổi để đến một lúc nào đó giá trị của điều kiện được chuyển từ đúng sang sai, để câu lệnh được kết thúc
Trang 51 Các hoạt động lặp với số lần chưa biết trước
2 Ví dụ về lệnh lặp với số lần chưa biết trước
3 Lặp vô hạn lần – Lỗi lập trình cần tránh
- Máy tính có thể thực hiện số lần lặp không hạn chế
- Giúp con người thực hiện được các công việc từ đơn giản đến phức tạp
- Máy tính có khả năng tính toán nhanh, làm
việc bền bỉ và không biết “mệt mỏi”
- Khi thực hiện vòng lặp, điều kiện trong câu lệnh phải được thay đổi để đến một lúc nào đó giá trị của điều kiện được chuyển từ đúng sang sai, để câu lệnh được kết thúc
CHÚ Ý:
Khi viết câu lệnh lặp cần để
máy tính không thực hiện
những “vòng lặp vô tận”.
Trang 6- Số lần lặp lại là biết trước
- Điều kiện là giá trị của một biến
đếm có giá trị nguyên đạt được
giá trị cuối hay chưa
- Câu lệnh được thực hiện ít nhất
1 lần, sau đó kiểm tra điều kiện
- Số lần lặp lại chưa biết trước
- Điều kiện tổng quát hơn: Có thể kiểm tra một số thực, cũng có thể là một điều kiện tổng quát khác, ví dụ như một số có chia hết cho 3 hay không?
- Trước hết điều kiện được kiểm tra Nếu điều kiện được thỏa mãn, câu lệnh được thực hiện Do đó có thể có trường hợp câu lệnh hoàn toàn không được thực hiện
Trang 7a Thuật toán 1:
Bước 1 S 10, x 0.5
Bước 2 Nếu S<=5.2, chuyển bước 4
Bước 3 S S–x và quay lại bước 2
Bước 4: Thông báo S và kết thúc
thuật toán
- Ở thuật toán trên máy tính thực hiện 10 thuật toán
- Khi kết thúc thuật toán S=5.0 Chương trình mô tả thuật toán
S:=10; x:=0.5;
While S>=5.2 do S:=S – x;
Writeln(S);