logo

Phân biệt hàm và thủ tục chuẩn nhất

Trong tin học các khái niệm "hàm" và "thủ tục" là những khái niệm cơ bản và thường được sử dụng thường xuyên để tính toán. Tuy cả hai đều liên quan đến việc sắp xếp các lệnh và thực hiện một số tác vụ những giữa chúng có những sự khác biệt nhất định. Trong bài viết dưới đây, Toploigiai sẽ cùng các bạn phân biệt sự khác nhau giữa hàm và thủ tục trong lập trình. Mời các bạn cùng theo dõi!


Khái niệm về Hàm và Thủ tục

- Hàm là khái niệm dùng để chỉ một khối mã có thể được tái sử dụng nhiều lần và thực hiện một tác vụ cụ thể trong chương trình. Hàm có thể được gọi từ các đoạn mã khác trong chương trình, có thể nhận giá trị đầu vào (tham số) và trả về giá trị đầu ra. Điều này giúp cho chương trình được viết một cách dễ dàng hơn và giúp giảm lượng mã lặp lại trong chương trình.

- Thủ tục là một khối mã cũng thực hiện một tác vụ cụ thể trong chương trình nhưng không trả về giá trị đầu ra. Thủ tục có thể nhận tham số đầu vào và thường được sử dụng để thực hiện các tác vụ như lưu trữ dữ liệu, hiển thị thông tin cho người dùng hay thực hiện một chuỗi các câu lệnh.

- Cả hàm và thủ tục đều giúp giảm độ phức tạp của chương trình và làm cho mã nguồn chương trình dễ đọc hiểu hơn. Hai thành phần này giúp cho việc sửa lỗi, bảo trì và mở rộng chương trình trở nên dễ dàng và tiết kiệm thời gian, công sức

Phân biệt hàm và thủ tục

Cấu trúc của Hàm và Thủ tục

- Hàm và thủ tục có cấu trúc chung như sau:

def ten_thu_tuc/ten_ham(tham_so_1, tham_so_2, ...):
   # Khối mã để thực hiện các tính toán
   # Trả về giá trị (nếu có)
   return gia_tri

- Ví dụ về Hàm:

def tinh_tong(a, b):
   tong = a + b
   return tong

# Gọi hàm để tính tổng của hai số 5 và 3
tong = tinh_tong(5, 3)
print("Tổng của 5 và 3 là:", tong)

+ Kết quả trên màn hình sẽ hiển thị: Tổng của 5 và 3 là: 8

- Ví dụ về Thủ tục:

def chao_hoi():
   print("Xin chào, đây là thủ tục chào hỏi!")
   
# Gọi thủ tục để thực thi
chao_hoi()

+ Kết quả trên màn hình sẽ hiển thị: Xin chào, đây là thủ tục chào hỏi!


Phân biệt Hàm và Thủ tục

Điểm giống nhau:

- Đều là một khối mã (code block) trong chương trình.

- Đều được gọi bởi các phần khác trong chương trình để thực hiện một công việc nào đó.

- Cả 2 đều nhận tham số đầu vào từ người dùng để thực hiện tác vụ.

Điểm khác nhau:

Điểm khác biệt

Hàm

Thủ tục

Giá trị trả về Trả về một giá trị kết quả Không trả về giá trị nào
Sử dụng trong biểu thức Có thể được sử dụng trong các biểu thức Không thể sử dụng được trong các biểu thức
Truy cập biến toàn cục Không thể truy cập trực tiếp các biến toàn cục trong chương trình Có thể truy cập trực tiếp các biến toàn cục trong chương trình
Mục đích sử dụng Thường được sử dụng để thực hiện một nhiệm vụ cụ thể và trả về một giá trị cụ thể Thường được sử dụng để thực hiện một chuỗi các câu lệnh để thực hiện một tác vụ nào đó
Tên gọi Tên có ý nghĩa thể hiện công việc được thực hiện Tên thường để mô tả nhiệm vụ của thủ tục
Tái sử dụng Có thể được sử dụng lại nhiều lần trong chương trình Thường được sử dụng một lần duy nhất trong chương trình
Hiệu suất Tốn ít tài nguyên hệ thống hơn do không ảnh hưởng đến việc lưu trữ và truy cập biến toàn cục Tốn nhiều tài nguyên hệ thống hơn do phải lưu trữ và truy cập biến toàn cục

-----------------------------

Trên đây là những khác biệt chính giữa hàm và thủ tục. Bằng cách sử dụng các hàm và thủ tục hiệu quả, người sử dụng có thể sắp xếp chương trình của mình một khoa học và dễ bảo trì hơn.

icon-date
Xuất bản : 17/04/2023 - Cập nhật : 30/06/2023