Câu 3 trang 70 SGK tin học 8

Hãy tìm hiểu các thuật toán sau đây và cho biết khi thực hiện thuật toán, máy tính sẽ bao nhiêu vòng lặp?


Hãy tìm hiểu các thuật toán sau đây và cho biết khi thực hiện thuật toán, máy tính sẽ bao
nhiêu vòng lặp? Khi kết thúc, giá trị của S bằng bao nhiêu? Viết chương trình Pascal thể
hiện các thuật toán đó!

a) Thuật toán 1

Bước 1. S

Bước 2. Nếu S 5.2, chuyển tới bớc 4.

Bước 3. S

Bước 4. Thông báo S và kết thúc thuật toán.

b) Thuật toán 2

Bước 1. S 10, n  0.

Bước 2. Nếu S 10, chuyển tới bớc 4.

Bước 3. n n + 3, S = S-n quay lại bước 2.

Bước 4. Thông báo S và kết thúc thuật toán.

Lời giải : 

 a. Thuật toán 1 :

Máy tính sẽ thực hiện 10 vòng lặp , khi kết thúc thuật toán giá trị của S = 5.0

   Đoạn chương trình Pascal tương ứng:

   S := 10;  x := 0.5;

   While S > 5.2 do

                       S := S – x;

   Writeln(S);

b. Thuật toán 2 :

Máy tính sẽ không thực hiện vòng lặp nào do điều kiện không thỏa mãn, khi kết thúc thuật toán giá trị của S = 10

Đoạn chương trình Pascal tương ứng:

S := 10;  n := 0;

   While S < 10 do

                 Begin

                       n := n + 3;

                       S := S – n

                   End;                     

   Writeln(S);

Bài giải tiếp theo
Câu 4 trang 71 SGK tin học 8
Câu 5 trang 70 SGK Tin học lớp 8