JavaScript is required

Xác định giá trị của k sau khi đoạn chương trình sau được thưc hiện xong:

k := 1;

For i1 :=1 to n1 do

For i2 :=1 to n2 do

For im :=1 to nm do

k:= k+1;

A.

n1 n2 … nm

B.

1 + n1 + n2 + … + nm

C.

1+ n1 n2 … nm

D.

n1 + n2 + … + nm

Trả lời:

Đáp án đúng: C


Đoạn chương trình trên thực hiện một vòng lặp lồng nhau gồm m vòng lặp. Vòng lặp ngoài cùng chạy từ 1 đến n1, vòng lặp thứ hai chạy từ 1 đến n2, và cứ tiếp tục như vậy cho đến vòng lặp trong cùng chạy từ 1 đến nm. Biến k được khởi tạo bằng 1. Bên trong vòng lặp trong cùng, k được tăng thêm 1. Số lần k được tăng thêm 1 bằng số lần vòng lặp trong cùng được thực hiện. Số lần vòng lặp trong cùng được thực hiện là tích của số lần lặp của mỗi vòng lặp, tức là n1 * n2 * ... * nm. Vì vậy, sau khi đoạn chương trình được thực hiện, giá trị của k sẽ là giá trị ban đầu của k cộng với số lần k được tăng thêm 1, tức là 1 + n1 * n2 * ... * nm. Vậy đáp án đúng là C.

Câu hỏi liên quan