Giải Tin học 10 Bài 26 (Kết nối tri thức): Hàm trong python

Với giải bài tập Tin học 10 Bài 26: Hàm trong python sách Kết nối tri thức hay nhất, chi tiết giúp học sinh dễ dàng làm bài tập Tin học 10 Bài 26.

1 9,403 11/10/2024
Tải về


Giải Tin học lớp 10 Bài 26: Hàm trong python

Khởi động

Khởi động trang 127 Tin học 10: Các chương trình giải những bài toán thực tế phức tạp thường có rất nhiều dòng lệnh, trong đó có không ít những khối lệnh tương ứng với một số thao tác được lặp đi lặp lại nhiều lần ở những vị trí khác nhau. Để đỡ công viết đi viết lại các khối lệnh đó, trong tổ chức chương trình viết bằng ngôn ngữ lập trình bậc cao, người ta thường gom các khối lệnh như vậy thành những chương trình con. Khi đó, trong chương trình người ta chỉ cần thay cả khối lệnh bằng một lệnh gọi chương trình con tương ứng. Trong Python, các hàm chính là các chương trình con.

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

Trả lời:

Một số hàm trong các lệnh đã học như hàm len(); str(); int()…có đặc điểm là có thể dùng tùy ý ở mọi nơi mình trong chương trình.

1. Một số hàm thiết kế sẵn của Python

Hoạt động

Hoạt động 1 trang 127 Tin học 10: Tìm hiểu một số hàm của Python

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

Bảng 26.1. Một số lệnh trong Python

abs( )

len( )

range( )

bool( )

float( )

list( )

round( )

chr( )

input( )

ord( )

str( )

divmod( )

int( )

print( )

type( )

Trả lời:

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

Câu hỏi

Câu hỏi trang 128 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( ).

Trả lời:

+ float() chỉ có một tham số duy nhất, có thể là số nguyên hoặc số thập phân. Kết quả trả về là một số dấu phẩy động tương ứng.

+ str() sẽ đưa đối tượng được chọn về dạng chuỗi.

+ len() tham số là chuỗi, trả về số lượng chuỗi

+ list() tham số là chuỗi, hàm này có tác dụng chuyển đổi kiểu dữ liệu của một biến sang dạng danh sách.

2. Thiết lập các hàm tự định nghĩa

Hoạt động

Hoạt động 2 trang 128 Tin học 10: Cách thiết lập hàm trong Python

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

Trả lời:

- Hàm trong Python được định nghĩa bằng từ khóa 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ừ khóa return.

- Cú pháp thiết lập hàm có trả lại giá trị:

def <tên hàm>():

<khối lệnh>

return <giá trị>

- Cú pháp thiết lập hàm không trả lại giá trị:

def <tên hàm>():

<khối lệnh>

return

Ví dụ:

>>> def inc(n):

return n+1

>>> inc(3)

4

Câu hỏi

Câu hỏi trang 129 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.

a)

def Nhap_xau ( ):

msg = input(“Nhập một xâu: ”)

return msg

b)

def Inday (n):

for k in range (n):

print (k, end = “ ”)

Trả lời:

a) Thiết lập hàm có giá trị trả về là msg, hàm có chức năng nhập một xâu bất kì.

b) Thiết lập hàm không có giá trị trả về, hàm có chức năng in ra giá trị k từ 0 đến n-1.

Luyện tập

Luyện tập 1 trang 130 Tin học 10: Viết hàm với tham số là số tự nhiên n in ra 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.

Trả lời:

import math
def KTNT(n): #Hàm kiểm tra số nguyên tố (Có thể dùng hàm prime trong SGK)
x=int(math.sqrt(n))+1
if n<2: return 0
for i in range(2,
x):
if n%i==0:return 0
return 1
def UocNT(n):
for i in range(2,n+1):
if n%i==0 and KTNT(i)==1:print(i,end=' ')
#Gọi hàm
n=int(input("Nhập số tự nhiên: "))
print("Các ước nguyên tố của n là: ",end='')
UocNT(n)

Giải Tin học 10 Bài 26: Hàm trong python - Kết nối tri thức (ảnh 1)

Hình 1. Tìm ước là số nguyên tố

Giải Tin học 10 Bài 26: Hàm trong python - Kết nối tri thức (ảnh 1)

Hình 2. Kết quả chạy thử chương trình

Luyện tập 2 trang 130 Tin học 10: Viết hàm numbers (s) đếm số các chữ số có trong xâu s.

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

Trả lời:

def numbers(s):
d=0
for i in s:
if i>='0' and i<='9': d=d+1
return d
print(numbers('010123abc'))

Vận dụng

Vận dụng 1 trang 130 Tin học 10: 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.

def prime (n):

if n < 2:

return False

C = 0

k = 2

while k < n:

if n%k == 0:

return False

k = k + 1

return True

Trả lời:

- Lệnh Return đầu tiên trả về không có giá trị khi n<2.

- Lệnh Return thứ 2 kiểm tra nếu số nhập vào lớn hơn 2 và chia hết k trong khoảng từ 1đến n thì trả về số đó là số nguyên tố, ngược lại trả về true.

- Hàm Prime() khác với phần thực hành là không phải sử dụng biến C để đếm ước thực sự.

Vận dụng 2 trang 130 Tin học 10: Viết chương trình yêu cầu nhập từ bàn phím một 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.

Trả lời:

def numbers(s):
d=0
for i in s:
if i>='0' and i<='9': d=d+1
return d
def DemKT(s):
d=0
s=s.upper() #Biến xâu thành kí tự in hoa
for i in s:
m=ord(i) #Lấy mã Unicode từng kí tự của s đưa vào biến m
if m>=65 and m<=90:d=d+1
return d
#Gọi hàm
s=input("Nhập vào xâu kí tự:")
print("Số kí tự số trong xâu là:",numbers(s))
print("Số kí tự tiếng Anh trong xâu là:",DemKT(s))

Giải Tin học 10 Bài 26: Hàm trong python - Kết nối tri thức (ảnh 1)

Hình 1. Chương trình

Giải Tin học 10 Bài 26: Hàm trong python - Kết nối tri thức (ảnh 1)

Hình 2. Kết quả chạy thử

Lý thuyết Tin học 10 Bài 26: Hàm trong Python

1. Một số hàm thiết kế sẵn của Python

- Python cung cấp sẵn nhiều hàm thực hiện được những công việc khác nhau cho phép người dùng được tùy ý sử dụng khi viết chương trình bằng câu lệnh gọi hàm tương ứng.

Bảng 1: Một số lệnh trong Python

abs()

len()

range()

bool()

float()

list()

round()

chr()

input()

ord()

str()

divmod()

int()

print()

type()

- Ví dụ:

+ Lệnh print(“Học mãi”) thực hiện việc in xâu kí tự “Học mãi” trong dấu ngoặc ra màn hình.

+ Lệnh int(“52”) chuyển xâu “52” thành số nguyên 52.

+ Lệnh type(y) trả lại kiểu dữ liệu của biến y.

2. Thiết lập các hàm tự định nghĩa

- Hàm trong Python được định nghĩa bằng từ khóa 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á tị trả lại sau từ khóa return.

+ Cú pháp thiết lập hàm có trả lại giá trị:

def <tên hàm>():

<khối lệnh>

return <giá trị>

Ví dụ 1: Cách viết hàm có trả lại giá trị

Lý thuyết Tin học 10 Bài 26: Hàm trong Python - Kết nối tri thức  (ảnh 1)

+ Cú pháp thiết lập hàm không trả lại giá trị:

def <tên hàm>():

<khối lệnh>

return

Ví dụ 2: Cách viết hàm không trả lại giá trị

Lý thuyết Tin học 10 Bài 26: Hàm trong Python - Kết nối tri thức  (ảnh 1)

Thực hành: Thiết lập hàm trong Python

Nhiệm vụ 1: Viết hàm yêu cầu nhập họ tên, rồi đưa lời chào ra màn hình

Hướng dẫn

Chương trình có thể như sau:

Lý thuyết Tin học 10 Bài 26: Hàm trong Python - Kết nối tri thức  (ảnh 1)

Nhiệm vụ 2: Viết hàm prime(n) với tham số là số tự nhiên n và trả lại True nếu n là số nguyên tố, trả lại False nếu n không phải là số nguyên tố.

Hướng dẫn

Để thiết lập hàm prime() chúng ta cần tính số ước thực sự của n (từ 1 đến n - 1). Biến C dùng để đếm số các ước thực sự của n. Khi đó n sẽ là số nguyên tố khi và chỉ khi C = 1.

Lý thuyết Tin học 10 Bài 26: Hàm trong Python - Kết nối tri thức  (ảnh 1)

Xem thêm lời giải bài tập Tin học lớp 10 Kết nối tri thức với cuộc sống hay, chi tiết khác:

Bài 27: Tham số của hàm

Bài 28: Phạm vi của biến

Bài 29: Nhận biết lỗi chương trình

Bài 30: Kiểm thử và gỡ lỗi chương trình

Bài 31: Thực hành viết chương trình đơn giản

Xem thêm tài liệu Tin học lớp 10 Kết nối tri thức với cuộc sống hay, chi tiết khác:

Lý thuyết Bài 26: Hàm trong Python

1 9,403 11/10/2024
Tải về


Xem thêm các chương trình khác: