You are on page 1of 22

Chương trì

Hàm
Chương trình con
Nhóm 4
Bá Quốc Bảo 33. Nguyễn Hồ Xuân T

36. Phạm Thuỳ T

39. Hoà
Nhóm 4
05. Huỳnh Bá Quốc Bảo 33. Nguyễn Hồ Xuân Thuỷ

09. Nguyễn Bảo Duy 36. Phạm Thuỳ Trâm

11. Trần Minh Đăng 39. Hoàng Ái Tú

16. Nguyễn Tấn Lộc 40. Đỗ Anh Tuấn

19. Trần Thanh Nghĩa

28. Thái Minh Quyền


ĐỊNH NGHĨA HÀM
01

HÀM
Khái niệm

CÁCH ĐỊNH
NGHĨA HÀM MỚI
Kiểu dữ liệu trả về
tên – tham số - nội dung của hàm
02
KHÁI NIỆM & LỢI
SỬ DỤNG HÀM
ĐÃ ĐƯỢC ĐỊNH NGHĨA 03 04 ÍCH

TRÌNH CON
PHÂN LOẠI
05

CHƯƠNG
CẤU TRÚC CHƯƠNG
TRÌNH CON
THỰC HIỆN

06
CHƯƠNG TRÌNH
CON
01
HÀM LÀ GÌ ?
HÀM LÀ GÌ
01
?
 Hàm là một nhóm lệnh, có thể yêu cầu
chương trình phải hoàn thành một
công việc nào đó.

 Hàm có thể được yêu cầu trả lại một


giá trị nào đó hoặc không.

 Ví dụ: Hàm tích luỹ thừa của một số. int main () là một hàm
tiêu biểu, trả lại kiểu int là kết quả chạy của chương trình.

 Người dùng có thể tự định nghĩa hàm mới trong chương


trình của mình.
02
CÁCH ĐỊNH
NGHĨA HÀM MỚI
CÁCH
02 NGHĨA HÀM MỚI
ĐỊNH
Kiểu_dữ_liệu_trả_về tên_của_hàm (các_tham_số_của_hàm)
Cú pháp {
chung nội_dung_hàm;
}
CÁCH
02 NGHĨA HÀM MỚI
ĐỊNH
<Kiểu_dữ_liệu_trả_về> <tên_của_hàm> (các_tham_số_của_hàm)
{
<nội_dung_hàm> ;
}

Kiểu dữ liệu trả về Các


Tên tham
của hàmsố của hàm
 Một hàm có thể được truyền vào một hoặc nhiều biến
có thểcóchỉ
Hàm cũng thểthực
sử Quy tắc đặt tên
 Các tham số của hàm được định nghĩa theo cú pháp như khai báo biến ( <kiểu_dữ_liệu>
hiện thao
dụng phéptáctínhlêntoán
giá và
trị của hàm cũng
<tên_biến> ) và được phân cách nháu bằng dấu phẩy
mà không
trả lại kết trả về
quả (cókiểu
thể gì

 Các tham số giống như biếngiống localquy
củatắc
hàmđặt- chúng chỉ tồn tại bên trong hàm, và sẽ không
cả. Khi đó, kiểu
kiểu dữ liệu nguyên dữ liệu tên biến
thể truy cập được từ bên ngoài. Nếu–như
trừ trong
có biến global trùng tên, thì biến tham số của hàm
trả vềnhư
thuỷ được đặt char,
là int, là void trường hợp
sẽ được sử dụng trong hàm của nó
(không giáhay
double,… trị) các kiểu
 Ta không được phép đặt tênoverloading (viết đè
biến local trùng tên biến tham số của hàm
người dùng định nghĩa hàm)
 Hàm không bắt buộc phải có tham số - ví dụ như hàm int main(). Khi đó ta bỏ qua mục này
trong ngoặc tròn
 Tham số của hàm có 3 dạng
CÁCH
02 NGHĨA HÀM MỚI
ĐỊNH
Kiểu_dữ_liệu_trả_về tên_của_hàm (các_tham_số_của_hàm)
{
nội_dung_hàm;
}

Nội dung hàm


Từ
Nội khóa return sẽ
Đối với
dung các hàm
của hàm cóthông
làgiá trịbáo
những trảviệckết thúc hàm
về (khác void),
ta cần hàm ngay
ta
thực lập
cần tức được
phải
hiện, và
sửtrả về giá
dụng
biểu trị trong
nếu có.
lệnh return
diễn giá_trị; để thôngnhọn
khối lên ngoặc báo
Ví dụ:
kết Một
thúchàm được
chương
Nội dung định
trình
của hàmvànghĩa
giá
có khảtrịtrảtrảvềvề.
năngmộtin kiểu
ra giágiá
trịtrị
củakhác void mà
một số (hàmkết thúc không có return sẽ khiến
void)
chương
Ví dụ: Nộitrình bị lỗi undefined
dung của hàm có khả behavior.
năng trảCác vềbộ dịch
tổng của không nhất thiết cần phải thông báo lỗi này
hai số
(nhưng thường sẽ có cảnh báo), và chương trình vẫn có thể được dịch thành công kể cả khi có lỗi
này. Khi đó giá trị trả về có thể là bất cứ giá trị nào. Để tránh sai sót, hãy luôn kết thúc các hàm một
cách hợp lệ.
Từ khóa return cũng có thể sử dụng trong hàm kiểu void để kết thúc hàm đó. Trong trường hợp
này, ta không cần có phần giá trị trả về.
03
SỬ DỤNG HÀM
ĐÃ ĐƯỢC ĐỊNH
NGHĨA
03SỬ DỤNG HÀM ĐÃ ĐƯỢC ĐỊNH NGHĨA

 Sau khi đã định nghĩa hàm, ta có thể sử dụng hàm bằng cách gọi tên của hàm cùng với giá trị của
các tham số của nó (nếu có)
 Chương trình trên gọi là hàm testing vừa rồi ở trong int main(), để kiểm tra tính năng của từ
khóa return
04
KHÁI NIỆM & LỢI ÍCH
KHÁI NIỆM
Để viết chương trình giải các bài toán lớn và phức tạp, người ta lập trình
có thể chia thành nhiều bài toán nhỏ. Mỗi bài toán là một dãy lệnh mô tả
một số thao tác nhất định (gọi là chương trình con). Sau đó ghép nối các
chương trình con thành chương trình chính.
Chương trình con là dãy các lệnh mô tả một số thao tác nhất định và có
thể được thực hiện từ nhiều vị trí trong chương trình.

LỢI ÍCH CỦA VIỆC SỬ DỤNG CHƯƠNG TRÌNH


 CON
Tránh được việc phải lặp đi lặp lại cùng một dãy lệnh
 Hỗ trợ việc thực hiện các chương trình lớn
 Phục vụ cho quá trình trừu tượng
 Mở rộng khả năng ngôn ngữ
 Thuận tiện cho việc phát triển nâng cấp chương trình
05
PHÂN LOẠI
CẤU TRÚC CT CON
PHÂN LOẠI
 Trong nhiều ngôn ngữ lập trình, chương trình con thường gồm hai loại:
 Hàm (Function): Là chương trình con thực hiện một số thao tác nào đó, và trả về một
giá trị qua tên của nó.
Ví dụ 1: 
sin(x) nhận vào giá trị thực x và trả về giá trị sinx
sqrt(x) nhận vào giá trị x trả về giá trị căn bậc hai của x
length(x) nhận vào xâu x và trả về độ dài của xâu x,...
 Thủ tục (Procedure): Là chương trình con thực hiện một số thao tác nào đó, và không
trả về giá trị nào qua tên của nó.
Ví dụ 2: các thủ tục vào/ra chuẩn hay thủ tục xử lí xâu: cin, cout, delete,…
CẤU TRÚC CHƯƠNG TRÌNH CON
< phần đầu >
Một số lưu ý:  [< phần khai báo >]
< phần
Một chương trình con có thể có hoặc không thân
có tham số>hình thức, có thể có hoặc
không có biến cục bộ.
Phần đầu: Cấu trúc chương trình con tương tự chương trình chính, nhưng nhất
thiết
Tham số có
phải hình
phần thức: Là
đầu đểthamkhai số
báođược
tên, đưa
nếu làvào khi thì
Hàm định nghĩa
phải chương
có khai báo trình con.liệu
kiểu dữ
trả
Thamvề. số thực sự: Là tham số được viết trong lời gọi chương trình con. Gồm
các hằng
Phầnvàkhai
biếnbáo:
nằmCótrong
thểdấu
khaingoặc ( ) có
báo cho dữtên
liệuchương
vào và ra,trình
cáccon.
hằng được sử dụng
trong chương
Biến cục bộ: Làtrình con.
các biến được khai báo trong chương trình con.
Phần
Biến thân:
toàn Là cáccác
phần: Là dãybiến
lệnhđược
đượckhai
thưc hiện
báo trong
trong chương
chương trình
trình con từ dữ liệu vào
chính.
và được kết quả như mong muốn. Phần này luôn nằm giữa 2 từ khoá là Begin và
End.
Trong Ởthân
giữahàm
là cáccần có lệnh:
thao tác cần < tên hàm >Sau
thực hiện. := < biểu
từ khóa thức >;
End là dấu chấm phẩy (;).
Kết thúc chương trình con là dấu chấm phẩy (;)
06
THỰC HIỆN
CHƯƠNG TRÌNH
CON
06THỰC HIỆN CHƯƠNG TRÌNH
CON
Để thực hiện (gọi) một chương trình con, ta cần phải có lệnh gọi nó
tương tự lệnh gọi hàm hay thủ tục chuẩn, bao gồm tên chương trình con
với tham số (nếu có) là các hằng và biến chứa dữ liệu vào và ra tương
ứng với các tham số hình thức đặt trong cặp ngoặc ( và ). Các hằng và
biến này được gọi là các tham số thực sự.
Ví dụ:

 Lệnh gọi chương trình con sẽ thực hiện từ


trên xuống dưới trong chương trình chính
 Khi thực hiện gọi chương trình con, các
tham số hinh thức dùng để nhập dữ liệu vào
của tham số thực sự tương ứng. Khi xuất dữ
liệu thì tham số chính thức lưu trữ dữ liệu ra
sẽ trả giá trị cho tham số thực sự tương ứng
THANKS

Nhóm 4

You might also like