Bài 26. Hàm trong Python SGK Tin học 10 Kết nối tri thức

Em có thể kể tên một số hàm trong số các lệnh đã học không? Các hàm đó có những đặc điểm chung gì?

    Khởi động

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

    Em có thể kể tên một số hàm trong số các lệnh đã học không? Các hàm đó có những đặc điểm chung gì?

    Phương pháp giải:

    Dựa vào kiến thức về một số hàm đã học 

    Lời giải chi tiết:

    Một số hàm trong số các lệnh đã học là input( ), len( ), str( ), int( ), print( ), float( ),….

    Đặc điểm chung: Các lệnh trên đều có dấu mở đóng ngoặc đi sau tên lệnh, bên trong ngoặc ghi thêm các tham số là các đại lượng, các biến hoặc biểu thức,…


    Hoạt động 1

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

    Quan sát một số câu lệnh trong bảng 26.1 và cho biết những câu lệnh có điểm chung gì.

    https://baivan.net/sites/default/files/styles/giua_bai/public/20220408034722_wm_shs-tin-hoc-10-128.jpg?itok=V2qjOhib

    Phương pháp giải:

    Quan sát các câu lệnh trong Bảng 26.1

    Lời giải chi tiết:

    Về hình thức: các lệnh đều có các dấu mở đóng ngoặc đi sau tên lệnh

    Bên trong dấu ngoặc, có thể ghi thêm tham số: các đại lượng, các biến, hoặc trong một số trường hợp, có cả biểu thức.


    ? mục 1

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

    Mô tả tham số và giá trị trả lại của mỗi hàm sau: float(), str(), len(), list().

    Phương pháp giải:

    Dựa vào lý thuyết trong phần 1. Một số hàm thiết kế sẵn của Python

    Lời giải chi tiết:

    Hàm

    Tham số

    Ý nghĩa

    float(x)

    x có thể là số hoặc xâu kí tự 

    Chuyển x sang số thập phân

    str(x)

    x có thể là số hoặc xâu kí tự

    Chuyển x sang xâu kí tự

    len(x)

    x là danh sách hoặc xâu kí tự

    Độ dài của đối tượng x

    list(x)

    x là xâu kí tự hoặc hàm range()

    Chuyển x sang danh sách


    Hoạt động 2

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

    Quan sát các ví dụ sau để biết cách viết hàm.

    Quan sát các ví dụ sau để biết cách viết hàm

    Phương pháp giải:

    Quan sát các ví dụ

    Lời giải chi tiết:

    Cách viết: Hàm được định nghĩa bằng từ khoá def, theo sau là tên hàm (tên hàm sẽ theo quy tắc đặt tên định danh)

    Hàm có thể có hoặc không có tham số. 

    Khối lệnh mô tả hàm được viết sau dấu “:” và viết lùi vào, thẳng hàng.

    Hàm có thể có hoặc không có giá trị trả lại sau từ khoá return.


    ? mục 2

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

    Quan sát các hàm sau, giải thích cách thiết lập và chức năng của mỗi hàm.

    Quan sát các hàm sau giải thích cách thiết lập và chức năng của mỗi hàm

    Phương pháp giải:

    Quan sát các hàm và dựa vào lý thuyết trong phần 2. Thiết lập các hàm tự định nghĩa

    Lời giải chi tiết:

    a) 

    - Cách thiết lập: Hàm được định nghĩa bằng từ khoá def, theo sau là tên hàm Nhap_xau(). Hàm không có tham số, khối lệnh mô tả hàm được viết sau dấu “;”. Hàm trả về giá trị msg.

    - Chức năng: Nhập và trả về một xâu kí tự

    b) 

    - Cách thiết lập: Hàm được định nghĩa bằng từ khoá def, theo sau là tên hàm Inday(n). Hàm có tham số, khối lệnh mô tả hàm được viết sau dấu “;”. Hàm không có giá trị trả về.

    - Chức năng: Hiển thị ra màn hình một dãy số từ 0 tới n - 1


    Luyện tập

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

    1. Viết hàm với tham số là số tự nhiên n in ra tất cả các số là ước nguyên tố của n.

    Gợi ý: Sử dụng hàm prime( ) trong phần thực hành.

    Phương pháp giải:

    Sử dụng hàm prime( ) trong phần thực hành.

    Lời giải chi tiết:

    def prime(n):

        c=0

        k=1

        while k<n:

            if n%k==0:

                c=c+1

            k=k+1

        if c==1:

            return True

        else:

            return False

    n=int(input("Nhập số tự nhiên n:"))

    for i in range(1,n+1):

        if n%i==0 and prime(i)==True:

            print(i, end=" ")

    2. Viết hàm numbers(s) đếm số các chữ số có trong xâu s.

    Ví dụ numbers(“0101abc”) = 4.

    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 vào xâu s:")

    def numbers(s):

        c=0

        for i in s:

            if i.isdigit():

                c=c+1

        return c

    print(numbers(s))


    Vận dụng

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

    1. Trong khi viết hàm có thể có nhiều lệnh return. Quan sát hàm sau và giải thích ý nghĩa của những lệnh return. Hàm này có điểm gì khác so với hàm prime( ) đã được mô tả trong phần thực hành.

    https://baivan.net/sites/default/files/styles/giua_bai/public/d/m/Y/20220408034722_wm_shs-tin-hoc-10-131.jpg?itok=1pkXv4IJ

    Phương pháp giải:

    Quan sát hàm và nội dung mô tả hàm prime() trong phần thực hành

    Lời giải chi tiết:

    Hàm này có ba lần thực hiện lệnh return.

    - Lần return thứ nhất kiểm tra nếu n < 2 thì dừng ngay và trả về False

    - Lần return thứ hai nếu tìm ra số k là ước của n thì dừng lại ngay và trả về False

    - Cuối cùng mới return True thông báo n là số nguyên tố

     

    Hàm này tối ưu hơn so với hàm prime đã được mô tả trong phần thực hành do có thể trả về giá trị True hoặc False ngay mà không cần thực hiện hết các câu lệnh tới cuối.

    2. Viết chương trình yêu cầu nhập từ bàn phím một xâu kí tự, sau đó thông báo:

    - Tổng số các kí tự là chữ số của xâu.

    - Tổng số các kí tự là chữ cái tiếng Anh trong xâu.

    Viết hàm cho mỗi yêu cầu trên.

    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:

    def numbers(s):

        t=0

        for ch in s:

            if '0'<=ch<='9':

                 t=t+1

        return t

    def characters(s):

        t=0

        for ch in s:

            if 'a'<=ch<='z' or 'A'<=ch<='Z':

                 t=t+1

        return t

    s=input("Nhập xâu kí tự: ")

    print("Số kí tự chữ số trong xâu s là: ", numbers(s))

    print("Số kí tự chữ cái trong xâu s là: ", characters(s))

    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