Câu 4.
Lựa chọn ngôn ngữ lập trình Python hoặc C++ để tìm hiểu đoạn chương trình sau:
Python:
L = [4, 6, 2]
n, T = 3, 0
for i in range(0, n):
k = 1
for j in range(0, i + 1):
T = T + k * L[j]
k = -1 * kC++:
int n = 3, T = 0, L[] = {4, 6, 2};
for (int i = 0; i < n; i++) {
int k = 1;
for (int j = 0; j < i + 1; j++) {
T = T + k * L[j];
k = -1 * k;
}
}Sau khi thực hiện đoạn chương trình trên, biến T có giá trị nào sau đây?
- A.
-2.
- B.
-4.
- C.
4.
- D.(Đáp án đúng)
2.
Lời giải
Đáp án đúng: D.
Ở mỗi vòng i, k được đặt lại bằng 1 và đổi dấu sau mỗi lần cộng, nên T được cộng thêm (lấy i + 1 phần tử đầu):
– i = 0: T = 0 + 4 = 4.
– i = 1: T = 4 + 4 – 6 = 2.
– i = 2: T = 2 + 4 – 6 + 2 = 2.
Kết quả T = 2. Chọn D.