Bài 26: Hàm trong Python

Khởi động (SGK Kết nối tri thức với cuộc sống - Trang 127)

Hướng dẫn giải

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,…

(Trả lời bởi GV Nguyễn Trần Thành Đạt)
Thảo luận (1)

Hoạt động 1 (SGK Kết nối tri thức với cuộc sống - Trang 127)

Hướng dẫn giải

Các lệnh đều có các dấu mở ngoặc, đóng ngoặc phía sau lệnh.

(Trả lời bởi Nguyên Khôi)
Thảo luận (1)

Câu hỏi mục 1 (SGK Kết nối tri thức với cuộc sống - Trang 128)

Hoạt động 2 (SGK Kết nối tri thức với cuộc sống - Trang 128)

Hướng dẫn giải

Trả lời:

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.

(Trả lời bởi Toru)
Thảo luận (1)

Câu hỏi mục 2 (SGK Kết nối tri thức với cuộc sống - Trang 129)

Hướng dẫn giải

Trả lời:

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.

(Trả lời bởi Toru)
Thảo luận (1)

Luyện tập - bài 1 (SGK Kết nối tri thức với cuộc sống - Trang 130)

Hướng dẫn giải

Trả lời:

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=" ")

loading...

(Trả lời bởi Toru)
Thảo luận (1)

Luyện tập - bài 2 (SGK Kết nối tri thức với cuộc sống - Trang 130)

Hướng dẫn giải

Trả lời:

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

loading...

(Trả lời bởi Toru)
Thảo luận (1)

Vận dụng - bài 1 (SGK Kết nối tri thức với cuộc sống - Trang 130)

Hướng dẫn giải

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

Trả lời:

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.

(Trả lời bởi Toru)
Thảo luận (1)

Vận dụng - bài 2 (SGK Kết nối tri thức với cuộc sống - Trang 130)

Hướng dẫn giải

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

loading...

(Trả lời bởi Toru)
Thảo luận (1)