Bài tậpMột số lệnh làm việc với xâu kí tự có đáp án
10 câu hỏi
Bài toán tìm kiếm xâu con trong một xâu là một trong những bài toán tin học được ứng dụng nhiều trong thực tế. Công cụ tìm kiếm thông tin trên Internet hay lệnh tìm kiếm trong soạn thảo văn bản được xây dựng trên cơ sở bài toán tìm xâu con.
Cho biết xâu c = “Trường Sơn” và xâu m = “Bước chân trên dải Trường Sơn”. Em hãy cho biết xâu c có là xâu con của xâu m không? Nếu có thì tìm vị trí của xâu c trong xâu m.
- Xâu c có là xâu con của xâu m.
- Vị trí của xâu c trong xâu m: 19
Một số lệnh tìm kiếm xâu con trong xâu kí tự
Quan sát các ví dụ sau để tìm hiểu cách kiểm tra xâu con và tìm kiếm vị trí xâu con trong xâu kí tự.
- Dùng toán tử in để kiểm tra một xâu có là xâu con của xâu khác không.
<xâu 1> in <xâu 2>
- Lệnh find() tìm vị trí xuất hiện của một xâu trong một xâu khác.
<xâu mẹ>.find(<xâu con>, start)
Biểu thức logic sau là đúng hay sai?
>>> ''010'' in ''001100''
Biểu thức trên sai vì xâu “010” không nằm trong xâu “001100”
Lệnh sau trả lại giá trị là gì?
>>> ''ababababab''.find(''ab'',4)
Kết quả: 4
Lệnh sẽ tìm vị trí xâu ''ab'' từ vị trí 4
Một số lệnh thường dùng với xâu kí tự
Quan sát các ví dụ sau để biết cách sử dụng một số lệnh thường dùng với xâu kí tự như: split(), join().
- split(): tách xâu thành danh sách
- join(): nối danh sách các xâu thành một xâu
- Dùng lệnh split() tách xâu thành các từ và đưa vào một danh sách: A = s.split('';'')
- Lệnh join() sẽ nối các phần tử của danh sách trên bởi dấu '' '': '' ''.join(A)
Viết chương trình nhập nhiều số (số nguyên hoặc số thực) từ bàn phím, các số cách nhau bởi dấu cách. Sau đó in ra màn hình tổng các số đã nhập.
Dữ liệu nhập vào là một xâu. Dùng lệnh split() để tách thành danh sách. Chuyển các phần tử của danh sách này thành số và tính tổng.
s=input("Nhập dãy các số")
A=s.split(" ")
t=0
for i in range(0, len(A)):
t=t+int(A[i])
print(t)

Viết chương trình nhập họ tên đầy đủ của người dùng, sau đó in thông báo tên và họ đệm của người đó.
Chương trình:
s=input("Nhập họ tên")
A=s.split(" ")
print("Tên: ", A[len(A)-1])
print("Tên đệm: ", A[len(A)-2])
Viết chương trình nhập hai số tự nhiên từ bàn phím, cách nhau bởi dấu cách và đưa ra kết quả UCLN của hai số này.
s=input("Nhập hai số tự nhiên")
A=s.split(" ")
a=int(A[0])
b=int(A[1])
r = a % b
while r != 0:
a = b
b = r
r = a % b
print("ƯCLN của a và b là: ",b)

Viết chương trình nhập số tự nhiên n rồi nhập n họ tên học sinh. Sau đó yêu cầu nhập một tên và thông báo số bạn có cùng tên đó trong lớp.
n=int(input("Nhập số tự nhiên n"))
A=[]
t=0
for i in range(0,n):
A.append(input("Nhập họ tên"))
s=input("Nhập một tên")
for i in range(0,n):
B=A[i].split()
if s == B[len(B)-1]:
t=t+1
print("Vậy trong lớp có số bạn cùng tên đó là: ",t)



