NGÔN NGỮ LẬP TRÌNH C++ 1
NGÔN NGỮ LẬP TRÌNH C++ 1
Tuần 5
Tuần 5
Nội dung trình bày
Nội dung trình bày
Khái niệm hàm
Khái niệm hàm
•
Trong khi lập trình, ta thấy có những đoạn mã lặp đi lặp lại nhiều
lần để thực hiện một công việc nào đó. Ta có thể tách đoạn mã đó
thành một module cụ thể. Sau đó thay cho việc viết lặp đi lặp lại
đoạn mã, ta chỉ cần thực hiện module nhiều lần.
Khái niệm hàm
Khái niệm hàm
•
Ví dụ: Trong một bài toán ta cần phải thực hiện 10 lần tính n!. Thay
cho việc viết 10 lần lặp đi lặp lại các đoạn mã tính n!. Ta chỉ cần
viết một module tính n!, sau đó gọi module này ra 10 lần. Rõ ràng
sau khi module hóa, chương trình của ta xây dựng ngắn và đơn
giản hơn rất nhiều.
Khái niệm hàm
Khái niệm hàm
Các thư viện hàm trong C++
Các thư viện hàm trong C++
•
Một số thư viện hàm cần quan tâm:
–
iostream: Là thư viện hướng đối tượng cung cấp các chức năng nhập / xuất dữ liệu.
–
math: Là thư viện chứa các hàm toán học
–
time: Là thư viện chuyên xử lý về thời gian
–
stdlib: Thư viện này bao gồm các chức năng liên quan đến việc cấp phát, giải phóng bộ nhớ; Chuyển đổi các
kiểu dữ liệu; Điều khiển tiến trình; Sắp xếp và tìm kiếm dữ liệu; Một số phép tính toán học.
Các thư viện hàm trong C++
Các thư viện hàm trong C++
•
Để sử dụng hàm trong một thư viện nào đó, ta cần phải khai báo
thư viện ở phía trên cùng của chương trình theo cú pháp sau:
#include <tên thư viện.h>
–
Ví dụ: Ta muốn sử dụng hàm tính căn (sqrt), hàm này nằm ở thư viện math. Vậy ta cần phai báo thư viện ở
đầu chương trình như sau:
#include <math.h>
Cú pháp hàm
Cú pháp hàm
•
Ngoài việc sử dụng các hàm có sẵn trong các thư
}
Cú pháp hàm
Cú pháp hàm
•
Hàm có giá trị trả về:
<kiểu giá trị trả về> <tên hàm>(tham số hình thức)
{
Nội dung hàm
return <giá trị trả về>;
}
tham số hình thức: Chứa giá trị đầu vào của hàm. Tham số này có
thể có hoặc không có. Nếu có nhiều hơn một tham số thì các tham
số cách nhau bởi dấu phảy.
giá trị trả về: Là giá trị mà hàm sẽ nhận được sau khi thực hiện xong.
Giá trị trả về có thể là một biến số hoặc hằng số hoặc một giá trị
cụ thể. Tuy nhiên giá trị trả về phải cùng kiểu giá trị với kiểu giá trị
trả về.
return: Hàm kết thúc ngay sau câu lệnh return. Các câu lệnh sau lệnh
return không được thực hiện.
Cú pháp hàm
Cú pháp hàm
–
Ví dụ:
•
Hàm tính diện tích của hình chữ nhật
int dienTichHCN(int a, int b)
{
int dientich;
Thực hiện hàm (gọi hàm)
Thực hiện hàm (gọi hàm)
–
Đối với hàm có giá trị trả về: Về cú pháp gọi hàm cũng giống như hàm không có giá trị trả về, tuy nhiên hàm
có giá trị trả về có thể được ghép chung vào với các biểu thức hoặc phép gán, …
•
Ví dụ:
–
Biểu thức:
•
y = a*a + b*b*b + 5
•
Ta có thể viết với hàm pow như sau:
y = pow(a, 2) + pow(b, 3) + 5
Thực hiện hàm (gọi hàm)
Thực hiện hàm (gọi hàm)
•
Ví dụ:
int main()
{
int x = 5, y = 9;
int dtHCN = dienTichHCN(x, y);
cout << “DT Hinh chu nhat la: “ << dtHCN << endl;
float dtHT = dienTichHT(sqrt(pow(x,2) + pow(y,2)));
cout << “DT Hinh tron la: “ << dtHT << endl;
}
Nguyên mẫu hàm
Nguyên mẫu hàm
Nguyên mẫu hàm
Nguyên mẫu hàm
•
Chú ý:
–
Trong nguyên mẫu hàm ta có thể lược bớt phần tên của tham số và chỉ quan tâm đến phần kiểu dữ liệu của
tham số.
–
Nếu khai báo hàm nằm phía trên hàm main() thì ta có thể không cần khai báo Nguyên mẫu hàm. Nếu khai báo
hàm nằm phía dưới hàm main() thì ta buộc phải sử dụng Nguyên mẫu hàm
Biến toàn cục và biến cục bộ
Biến toàn cục và biến cục bộ
•
Biến toàn cục: Là biến có thể được sử dụng ở bất kỳ nơi nào
trong chương trình. Biến toàn cục được khai báo ở bên ngoài
hàm và thường nằm phía dưới khai báo thư viện.
–
Ví dụ:
#include <iostream.h>
int x;
void main()
{
cout << x << endl;
tangX();
cout << x << endl;
}
void tangX()
{
{
int x = 25;
cout << x << endl;
tangX();
cout << x << endl;
}
void tangX()
{
int x = 20;
x = x + 1;
cout << “x trong ham tangX: “ << x << endl;
}
Tham số của hàm
Tham số của hàm
•
Như ta đã biết tham số của hàm sẽ mang các giá trị đầu vào cho
hàm.
•
Các tham số của hàm mang ý nghĩa là biến cục bộ ở trong hàm đó.
•
Mỗi khi tham số hình thức đại diện cho một tham số thực nào đó,
thì giá trị của tham số thực sẽ được truyền vào cho tham số hình
thức để thực hiện làm đầu vào cho hàm.
Tham số của hàm
Tham số của hàm
•
Ví dụ:
#include <iostream.h>