Câu 4 trang 67 SGK tin học 8

Hãy tìm hiểu mỗi đoạn chương trình Pascal sau đây và cho biết với đoạn lệnh đó chương trình thực hiện bao nhiêu vòng lặp. Hãy rút ra nhận xét của em.

Đề bài

Hãy tìm hiểu mỗi đoạn chương trình Pascal sau đây và cho biết với đoạn lệnh đó chương trình thực hiện bao nhiêu vòng lặp. Hãy rút ra nhận xét của em.

 a) S:= 0;  n:= 0;

   While S <= 10 do

               begin n:= n + 1 ;

                    S:= S + n end;

b) S:= 0;  n:= 0;

   While S <= 10 do

                n:= n + 1 ;

                S:= S + n ;

Lời giải chi tiết

a)  Đoạn chương trình trên máy tính thực hiện 5 vòng lặp:

Vòng lặp

n:= n+1

S:= S+n

 1  1  1
 2  2  3
 3  3  6
 4  4  10
 5  5  15


b) Chương trình thực hiện vô hạn vòng lặp do giá trị của S luôn luôn nhỏ hơn 10.

Nhận xét: Cần chú ý về lỗi vòng lặp vô hạn. Ở phần b do thiếu đoạn begin end để đóng mở nên sau lệnh lặp chỉ thực hiện lệnh tăng n lên 1, còn lệnh tăng S lên 1 không thực hiện được. Do đó S luôn bằng 0 như ban đầu. Lỗi lặp vô hạn xuất hiện.

Xemloigiai.com

Lớp 8 | Các môn học Lớp 8 | Giải bài tập, đề kiểm tra, đề thi Lớp 8 chọn lọc

Danh sách các môn học Lớp 8 được biên soạn theo sách giáo khoa mới của bộ giáo dục đào tạo. Kèm theo lời giải sách bài tập, sách giáo khoa, đề kiểm tra 15 phút, 45 phút (1 tiết), đề thi học kì 1 và học kì 2 năm học 2024 ngắn gọn, chi tiết dễ hiểu.