Trong ngôn ngữ lập trình Pascal, sau khi thực hiện đoạn chương trình sau, biến X có giá trị là gì? S := ‘Hoang Anh Tuan’ ; X := ‘ ’ ; i := length(S) ; while S[i] <> ‘ ’ do Begin X := X + S[i] ; i := i + 1 ; End ; Giải thích câu này giúp mình với ạ

2 câu trả lời

- Xâu S = ‘Hoang Anh Tuan’

- Xâu X rỗng

- Giá trị i bằng độ dài xâu S bằng 14

+ i = 14   ⇒   S[14] = 'n' <> ' '   ⇒ X = n

+ i = 13   ⇒   S[13] = 'a' <> ' '   ⇒ X = na

+ i = 12   ⇒   S[12] = 'u' <> ' '   ⇒ X = nau

+ i = 11   ⇒   S[11] = 'T' <> ' '   ⇒ X = nauT

+ i = 10   ⇒   S[10] = ' '  <> ' '   ⇒ kết thúc vòng lặp

⇒ Biến X có giá trị là X = nauT

Vòng lặp while sẽ dừng lại khi tiến tới phần tử có giá trị khoảng trống

Ta thấy cho i là length(S) tức là i bằng 14

Khi vào vòng lặp vì do nó không phải khoảng trống nên cộng 'n' vào xâu đó, ta có Hoang Anh Tuann

Tiếp tục tăng i cho 1 thì do i không phải khoảng trống nên tiếp tục ra

Hoang Anh Tuannn, cứ thế mà ra nnnnnnnnnn kéo dài và hết