While...do không có cách tính số lần lặp, ta chỉ có thể tính cho đến khi nào điều kiện sai để có thể biết được số lần lặp.
VD:
i:=1; S:=0;
while S<5 do
begin
S:=S+i;
i:=i+1;
end;
Ban đầu ta nhận được giá trị: i=1; S=0
thực hiện vòng lặp while
S<5 (đúng): VL1: S=S+i=0+1=1; i=i+1=1+1=2;
S<5 (đúng): VL2: S=S+i=1+2=3; i=i+1=2+1=3;
S<5 (đúng): VL3: S=S+i=3+3=6; i=i+1=3+1=4;
S<5 (sai): Kết thúc
Vậy thực hiện 3 vòng lặp
Dù ban đầu S=0, điều kiện là S<5, ta thường sẽ nghĩ có 5 lần nhưng trong vòng lặp while giá trị của S thay đổi không phải tăng 1 hay tăng 2 liên tục mà mỗi lần thay đổi là thay đổi 1 giá trị khác nhau. Nó không giống với công thức tính số vòng lặp của for...do
Số vòng lặp=giá trị cuối-giá trị đầu+1
Không có cách tính số vòng lặp của câu lệnh lặp chưa biết trước (while..do).
While..do chỉ lặp đến khi điều kiện sai.
Chúng ta có ví dụ chương trình như sau:
uses crt;
var s,i:integer;
begin
clrscr;
s:=0;i:=1
while i<=3 do
begin
s:=s+i;
i:=i+1;
end;
write(s,' ',i);
readln;
end.
-----------
Chú ý đến đoạn tô đậm ta biết được:
- Biến s=0; i=1.
- Điều kiện là i<=3 (i bé hơn hoặc bằng 3).
- Mỗi vòng lặp sẽ s:=s+i trước sau đó i:=i+1 sau.
Chúng ta giải quyết như sau:
Lần 1 i<=3 (TM): s=s+i=0+1=1; i=i+1=1+1=2
Lần 2 i<=3 (TM): s=s+i=1+2=3; i=i+1=2+1=3
Lần 3 i<=3 (KTM): s=s+i=3+3=6; i=i+1=3+1=4
Vậy từ đây số vòng lặp là 3 và giá trị của s=6; i=4.
Không giống for..do, giá trị của một biến trong while..do sẽ luôn thay đổi, vì nó không biết trước vòng lặp của nó là bao nhiêu.
Giống như việc bạn học bài và không biết khi nào bạn sẽ hiểu bài. Nhưng for..do thì lại khác, nó cho bạn biết trước số lần lặp tương đồng với số lần bạn học là bao nhiêu.
*Lưu ý: cách tính số vòng lặp của while..do $\ne$ for..do.
Tin học, tiếng Anh: informatics, tiếng Pháp: informatique, là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng (ảo). Với cách hiểu hiện nay, tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin.
Nguồn : Wikipedia - Bách khoa toàn thưLớp 8 - Năm thứ ba ở cấp trung học cơ sở, học tập bắt đầu nặng dần, sang năm lại là năm cuối cấp áp lực lớn dần nhưng các em vẫn phải chú ý sức khỏe nhé!
Nguồn : ADMIN :))Xem thêm tại https://loigiaisgk.com/cau-hoi or https://giaibtsgk.com/cau-hoi
Copyright © 2021 HOCTAPSGK