Bài 14.Chương trình con trong ngôn ngữ lập trình Python
1. Tìm hiểu về chương trình con
– Chương trình con trong Python gồm các package, module và các hàm được xây dựng sẵn hoặc do người lập trình tự xây dựng.
– Package là thư mục chứa một hoặc nhiều module hay các package khác nhau
– Module là tập hợp gồm các hàm liên quan như: math, random, pygame,…
– Chương trình con thường gồm 2 loại là hàm và thủ tục, nhưng trong Python không phân biệt hàm và thủ tục, mà chỉ dùng khái niệm hàm. Hàm chỉ được thực hiện khi được gọi
2. Cấu trúc hàm trong Python
a. Khai báo hàm:
def <tên hàm>([<danh sách tham số>]): <dãy các lệnh> [return <giá trị>]
b. Hàm ẩn danh:
<tên hàm> = lambda <danh sách tham số>: <biểu thức, giá trị trả về>
c. Ví dụ: Viết hàm tính tổng 3 số bất kỳ
Cách 1: Khai báo hàm tong3
def tong3(a, b, c): t = a + b + c return t
Cách 2: Sử dụng hàm ẩn danh
tong3 = lambda a, b, c: a + b + c
Lưu ý:
Danh sách tham số có thể được khởi tạo giá trị mặc định
Ví dụ:
def tong3(a=0,b=0,c=0) return a + b + c
Lúc đó nếu không truyền tham số cho a, b, c thì a, b, c sẽ có giá trị mặc định là 0.
3. Thực hiện chương trình con
a. Đối với hàm: <tên hàm>([<danh sách tham số thực>])
Ví dụ:
tong = tong3(a, b, c) #Gán giá trị trả về của hàm tong3 cho biến tongtong = tong3() #Lúc đó biến tong sẽ có giá trị là 0, vì a, b, c sẽ nhận mặc định 0n = math.abs(x) #Gán giá trị tuyệt đối của x cho biến n
b. Đối với Module
import <tên module> hoặc from <tên module> import <tên hàm>
Ví dụ:
import math #Thêm thư viện Toán họcfrom math import sqrt #Thêm hàm sqrt trong thư viện Toán họcfrom random import * #Thêm toàn bộ hàm trong thư viện random
c. Đối với Package
import <tên pagekage>.<tên module>
Ví dụ:
#1import demopackage.modules #Thêm modules từ demopackagedemopackage.modules.say_hello() #Gọi hàm sayhello() trong modules
#2
import demopackage.modules as modules #Thêm modules từ demopackage
modules.say_hello() #Gọi hàm sayhello() trong modules
4. Một số ví dụ về chương trình con
Ví dụ 1: Viết chương trình có sử dụng hàm lambda để trả về số giây tương ứng với các tham số giờ, phút, giây tương ứng nhập vào từ bàn phím.
Ví dụ 2: Viết một chương trình tính giai thừa của một số nguyên dương n. Với n được nhập từ bàn phím.
Định nghĩa giai thừa: giai thừa của 1 số là tích các số liên tiếp từ 1 đến số đó. Trường hợp đặc biệt, giai thừa của 0 và 1 là 1.
Ví dụ, n = 8 thì kết quả đầu ra phải là 1*2*3*4*5*6*7*8 = 40320.
Có 2 cách để viết chương trình tính giai thừa trong python:
- Tính giai thừa không sử dụng hàm đệ quy
- Tính giai thừ có sử dụng hàm đệ quy.
def
tinhgiaithua(n):
giai_thua
=
1
;
if
(n
=
=
0
or
n
=
=
1
):
return
giai_thua;
else
:
for
i
in
range
(
2
, n
+
1
):
giai_thua
=
giai_thua
*
i;
return
giai_thua;
n
=
int
(
input
(
"Nhập số nguyên dương n = "
));
print
(
"Giai thừa của"
, n,
"là"
, tinhgiaithua(n));
Code mẫu: tính giai thừa sử dụng hàm đệ quy
n
=
int
(
input
(
"Nhập số cần tính giai thừa: "
))
def
giaiThua(n):
if
n
=
=
0
:
return
1
return
n
*
giaiThua(n
-
1
)
print
(giaiThua(n))
Ví dụ 3:. Viết chương trình con sử dụng Công thức Heron được sử dụng để tính diện tích của tam giác khi biết độ dài 3 cạnh. Công thức này có dạng: S = sqrt(p(p - a)(p - b)(p - c)), trong đó S là diện tích tam giác, p là nửa chu vi của tam giác (p = (a + b + c)/2), và a, b, c lần lượt là độ dài 3 cạnh của tam giác.
Không có nhận xét nào:
Đăng nhận xét