Bài 25. Một số lệnh làm việc với xâu kí tự SGK Tin học 7 Kết nối tri thức

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ự.

    Khởi động

    Trả lời câu hỏi khởi động trang 123 SGK Tin học 10

    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 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.

    Phương pháp giải:

    Dựa vào kiến thức đã học 

    Lời giải chi tiết:

    Xâu c là xâu con của xâu m. 

    Vị trí của xâu c trong xâu m: 19


    Hoạt động 1

    Trả lời câu hỏi Hoạt động 1 trang 123 SGK Tin học 10

    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ự.

    Phương pháp giải:

    Quan sát các ví dụ

    Lời giải chi tiế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)


    ? mục 1

    Trả lời câu hỏi mục 1 trang 124 SGK Tin học 10

    1. Biểu thức logic sau là đúng hay sai?

    Biểu thức logic sau là đúng hay sai?

    Phương pháp giải:

    Toán tử in dùng để 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ời giải chi tiết:

    Biểu thức trên sai vì xâu “010” không nằm trong xâu “001100”

    2. Lệnh sau trả lại giá trị là gì?

    Lệnh sau trả lại giá trị là gì?

    Phương pháp giải:

    Lệnh find() trả về vị trí của xâu con trong xâu mẹ 

    Lời giải chi tiết:

    Kết quả: 4

    Lệnh sẽ tìm vị trí xâu ''ab'' từ vị trí 4


    Hoạt động 2

    Trả lời câu hỏi Hoạt động 2 trang 124 SGK Tin học 10

    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().

    Phương pháp giải:

    Quan sát các ví dụ

    Lời giải chi tiết:

    split(): tách xâu thành các từ và đưa vào một danh sách. Cú pháp lệnh split() là: <xâu mẹ>.split(<kí tự cách>)

    join(): nối các phần tử của một danh sách thành một xâu. Cú pháp lệnh join() là: ''kí tự nối''.join()


    ? mục 2

    Trả lời câu hỏi mục 2 trang 125 SGK Tin học 10

    Cho xâu kí tự: "gà,vịt,chó,lợn,ngựa,cá". Em hãy trình bày cách làm để xóa các dấu "," và thay thế bằng dấu " " trong xâu này.

    Phương pháp giải:

    Python có các lệnh để xử lí xâu là split() dùng để tách xâu thành danh sách và lệnh join() dùng để nối danh sách các xâu thành một xâu

    Lời giải chi tiết:

    >>> s = "gà,vịt,chó,lợn,ngựa,cá"

    >>> s = " ".join(s.split(","))


    Luyện tập

    Trả lời câu hỏi Luyện tập trang 126 SGK Tin học 10: 

    1. 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.

    Phương pháp giải:

    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.

    Lời giải chi tiết:

    s=input("Nhập dãy các số cách nhau bởi dấu cách: ")

    A=s.split()

    n=[]

    for x in A:

        n.append(float(x))

    S=0

    for i in n:

        S=S+i

    print(S)

    2. 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 đó.

    Phương pháp giải:

    Dựa vào kiến thức đã học để viết chương trình

    Lời giải chi tiết:

    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])


    Vận dụng

    Trả lời câu hỏi Vận dụng trang 122 SGK Tin học 10

    1. 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.

    Phương pháp giải:

    Dựa vào kiến thức đã học để viết chương trình

    Lời giải chi tiết:

    s=input("Nhập hai số tự nhiên cách nhau bởi dấu cách: ")

    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) 

    2. 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.

    Phương pháp giải:

    Dựa vào kiến thức đã học để viết chương trình

    Lời giải chi tiết:

    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)

    SGK Tin học 10 - Kết nối tri thức

    Để học tốt SGK Tin học 10 - Kết nối tri thức, loạt bài giải bài tập SGK Tin học 10 - Kết nối tri thức đầy đủ kiến thức, lý thuyết và bài tập được biên soạn bám sát theo nội dung sách giáo khoa Lớp 10.

    Lớp 10 | Các môn học Lớp 10 | Giải bài tập, đề kiểm tra, đề thi Lớp 10 chọn lọc

    Danh sách các môn học Lớp 10 được biên soạn theo sách giáo khoa mới của bộ giáo dục đào tạo. Kèm theo lời giải sách bài tập, sách giáo khoa, đề kiểm tra 15 phút, 45 phút (1 tiết), đề thi học kì 1 và học kì 2 năm học 2024 ngắn gọn, chi tiết dễ hiểu.

    Toán Học

    Vật Lý

    Hóa Học

    Ngữ Văn

    Sinh Học

    GDCD

    Tin Học

    Tiếng Anh

    Công Nghệ

    Lịch Sử & Địa Lý

    Tác giả & Tác phẩm

    Hoạt động trải nghiệm & Hướng nghiệp