Thứ Sáu, 6 tháng 10, 2023

Chương trình con trong ngôn ngữ lập trình Python

 

Bài 14.Chương trình con trong ngôn ngữ lập trình Python

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 tong
tong = tong3() #Lúc đó biến tong sẽ có giá trị là 0, vì a, b, c sẽ nhận mặc định 0
n = 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ọc
from math import sqrt #Thêm hàm sqrt trong thư viện Toán học
from 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ụ:

#1
import demopackage.modules #Thêm modules từ demopackage
demopackage.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

 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.

 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.
Code mẫu: tính giai thừa không 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))

 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