24.11. Cho trước hai xâu kí tự s1, s2. Viết đoạn chương trình in ra xâu kí tự bao gồm lần lượt các...

Câu hỏi:

24.11. Cho trước hai xâu kí tự s1, s2. Viết đoạn chương trình in ra xâu kí tự bao gồm lần lượt các kí tự được lấy ra từ s1, s2. Nếu một trong hai xâu s1, s2 hết trước thi lấy tiếp từ xâu còn lại. Ví dụ nếu s1 = "012", s2 = "abcde" thì xâu kết quả sẽ là "0a1b2cde".

Câu trả lời:
Người trả lời: GV. Đỗ Đăng Đức
Để giải bài toán trên, bạn có thể thực hiện như sau:

Cách 1:
```python
def merge_strings(s1, s2):
m1 = len(s1)
m2 = len(s2)
m = min(m1, m2)

result = ""
for i in range(m):
result += s1[i] + s2[i]

result += s1[m:] + s2[m:]

return result

s1 = "012"
s2 = "abcde"
result = merge_strings(s1, s2)
print(result)
```

Cách 2:
```python
def merge_strings(s1, s2):
m1 = len(s1)
m2 = len(s2)
m = min(m1, m2)

result = ""
for i in range(m):
result += s1[i] + s2[i]

if m1 > m:
result += s1[m:]
else:
result += s2[m:]

return result

s1 = "012"
s2 = "abcde"
result = merge_strings(s1, s2)
print(result)
```

Câu trả lời cho câu hỏi trên:
Đoạn chương trình dưới đây sẽ in ra xâu kí tự bao gồm lần lượt các kí tự được lấy ra từ hai xâu s1 và s2, nếu một trong hai xâu s1 hoặc s2 hết trước thì lấy tiếp từ xâu còn lại.

```python
def merge_strings(s1, s2):
m1 = len(s1)
m2 = len(s2)
m = min(m1, m2)

result = ""
for i in range(m):
result += s1[i] + s2[i]

if m1 > m:
result += s1[m:]
else:
result += s2[m:]

return result

s1 = "012"
s2 = "abcde"
result = merge_strings(s1, s2)
print(result)
```

Kết quả sẽ là "0a1b2cde".
Bình luận (0)
Nhấn vào đây để đánh giá
Thông tin người gửi
0.07007 sec| 2261.172 kb