Please enable JavaScript.
Coggle requires JavaScript to display documents.
Bài 8: LẶP LẠI VỚI SỐ LẦN CHƯA BIẾT TRƯỚC., điều kiện thường là 1 phép so…
Bài 8: LẶP LẠI VỚI SỐ LẦN CHƯA BIẾT TRƯỚC.
LỆNH LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC
Để viết chương trình chỉ dẫn máy tính thực hiện các hoạt động lặp mà chưa xác định trước được số lần lặp, ta có thể sử dụng câu lệnh có dạng lặp với
số lần chưa xác định
.
Câu lệnh lặp với số lần chưa xác định trong Pascal có dạng
while <điều kiện> do <câu lệnh>
Các bước thực hiện như sau:
B1: kiểm tra điều kiện
B2: nếu điều kiện SAI, câu lệnh sẽ bị bỏ qua và việc thực hiện lệnh lặp kết thúc. Nếu điều kiện đúng, thực hiện câu lệnh và quay lại bước 1.
CÁC VÍ DỤ VỀ CÂU LỆNH LẶP VỚI SỐ LẦN CHƯA XÁC ĐỊNH
Ví dụ 1: Nếu cộng lần lượt n số tự nhiên đầu tiên (n = 1, 2, 3,...), cần cộng bao nhiêu số tự nhiên đầu tiên để ta nhận được tổng Tn nhỏ nhất lớn hơn 1000?
Ví dụ 2
Chúng ta biết rằng, nếu n ( n >0) càng lớn thì 1/n càng nhỏ, nhưng luôn lớn hơn 0. Với giá trị nào của n thì 1/n < 0.005 hoặc 1/n < 0.003? chương trình dưới đây tìm số n nhỏ nhất để 1/n nhỏ hơn 1 sai số cho trước.
Ví dụ 1
B4: In kết quả: S và n là số tự nhiên nhỏ nhất sao cho S > 1000. Kết thúc thuật toán( thuật toán chỉ dừng lại khi S>1000)
B3: S S + n và quay lại Bước 2
B2: Nếu S ≤ 1000, n n + 1; ngược lại chuyển tới Bước 4
B1: S 0, n 0
LẬP VÔ HẠN LẦN - LỖI LẬP TRÌNH CẦN TRÁNH
Khi viết chương trình tránh tạo lên những vòng lặp vô tận
Làm cho chương chạy mãi không dừng, ra kết quả không mong muốn
Có những trường hợp phải sử dụng vòng lặp vô hạn để tính toán nhưng nó sẽ tốn nhiều tài nguyên
Ví dụ 1
Kết quả
điều kiện
thường là 1 phép so sánh
câu lệnh
có thể là câu lệnh đơn giản hay câu lệnh ghép