Tài liệu Ngôn ngữ lập trình - Bài 3.1: Cơ bản về hàm - Nguyễn Xuân Hùng: Giảng viên: Nguyễn Xuân Hùng
Mobile: 0908 386 366
Email: nguyenxuanhung@wru.vn
BÀI 3.1. CƠ BẢN VỀ HÀM
NGÔN NGỮ LẬP TRÌNH
Nguyễn Xuân Hùng – Khoa CNTT – Trường Đại học Thủy Lợi
NỘI DUNG
1. Các hàm được định nghĩa sẵn.
2. Hàm do người dùng định nghĩa.
3. Quy tắc phạm vi.
10/17/20142 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
1. Các hàm được định nghĩa sẵn
• C++ có các thư viện của các hàm đã được định nghĩa
trước mà bạn có thể sử dụng trong các chương trình. Có
hai loại hàm trong C++: các hàm trả về một giá trị và các
hàm không trả về một giá trị nào.
10/17/20143 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
1. Các hàm được định nghĩa sẵn
1.1 Hàm trả về giá trị và không trả về giá trị
• Cú pháp:
Tên_hàm (danh sách đối số);
Danh sách đối số là các đối số ngăn cách nhau bởi dấu
phẩy: đối_số_1, đối_số_2,..., đối_số_n;
• Ví dụ:
double side = sqrt(area);
double p = pow(2.5, 3);
10/17/20144 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
1. Các hàm được định nghĩa sẵn
1.1 H...
21 trang |
Chia sẻ: putihuynh11 | Lượt xem: 591 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Ngôn ngữ lập trình - Bài 3.1: Cơ bản về hàm - Nguyễn Xuân Hùng, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Giảng viên: Nguyễn Xuân Hùng
Mobile: 0908 386 366
Email: nguyenxuanhung@wru.vn
BÀI 3.1. CƠ BẢN VỀ HÀM
NGÔN NGỮ LẬP TRÌNH
Nguyễn Xuân Hùng – Khoa CNTT – Trường Đại học Thủy Lợi
NỘI DUNG
1. Các hàm được định nghĩa sẵn.
2. Hàm do người dùng định nghĩa.
3. Quy tắc phạm vi.
10/17/20142 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
1. Các hàm được định nghĩa sẵn
• C++ có các thư viện của các hàm đã được định nghĩa
trước mà bạn có thể sử dụng trong các chương trình. Có
hai loại hàm trong C++: các hàm trả về một giá trị và các
hàm không trả về một giá trị nào.
10/17/20143 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
1. Các hàm được định nghĩa sẵn
1.1 Hàm trả về giá trị và không trả về giá trị
• Cú pháp:
Tên_hàm (danh sách đối số);
Danh sách đối số là các đối số ngăn cách nhau bởi dấu
phẩy: đối_số_1, đối_số_2,..., đối_số_n;
• Ví dụ:
double side = sqrt(area);
double p = pow(2.5, 3);
10/17/20144 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
1. Các hàm được định nghĩa sẵn
1.1 Hàm trả về giá trị và không trả về giá trị
• Bảng danh sách các hàm xây dựng sẵn
10/17/20145 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
TÊN MÔ TẢ KIỂU ĐỐI SỐ KIỂU CỦA
GIÁ TRỊ TRẢ
LẠI
VÍ DỤ GIÁ TRỊ FILE TIÊU ĐỀ
sqrt Căn bậc hai double double sqrt(4.0) 2.0 cmath
pow Tính mũ double double pow(2.0,3.0) 8.0 cmath
abs Trị tuyệt đối của một
số int
int int abs(-7)
abs(7)
7
7
cstdlib
labs Trị tuyệt đối của một
số long
long long labs(-70000)
labs(70000)
70000
70000
cstdlib
fabs Trị tuyệt đối của một
số double
double double fabs(-7.5)
fabs(7.5)
7.5
7.5
cmath
1. Các hàm được định nghĩa sẵn
1.1 Hàm trả về giá trị và không trả về giá trị
• Bảng danh sách các hàm xây dựng sẵn
10/17/20146 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
TÊN MÔ TẢ KIỂU ĐỐI SỐ KIỂU CỦA
GIÁ TRỊ TRẢ
LẠI
VÍ DỤ GIÁ TRỊ FILE TIÊU ĐỀ
ceil Làm tròn lên double double ceil(3.2)
ceil(3.9)
4.0
4.0
cmath
floor Làm tròn xuống double double floor(3.2)
floor(3.9)
3.0
3.0
cmath
exit Kết thúc chương
trình
int void exit (1); Không cstdlib
rand Sinh số ngẫu nhiên Không int rand( ) Các số khác
nhau
cstdlib
srand Thiết lập giá trị khởi
đầu cho hàm rand
unsigned int void srand(42); Không cstdlib
1. Các hàm được định nghĩa sẵn
1.1 Hàm trả về giá trị và không trả về giá trị
• Ví dụ 1: Tính căn bậc hai của một số nhập từ bàn phím.
(Click Me)
• Ví dụ 2: Nhập vào một số nguyên và trả về giá trị tuyệt
đối của nó.
(Click Me)
• Bài tập 3.1: (Click Me)
10/17/20147 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
1. Các hàm được định nghĩa sẵn
1.2 Bộ sinh số ngẫu nhiên
• Cú pháp:
rand();
• Ý nghĩa: lấy số ngẫu nhiên từ 0 đến RAN_MAX (RAN_MAX
tùy thuộc vào hệ thống nhưng ít nhất cũng bằng 32767)
• Ví dụ 1: sinh 10 số ngẫu nhiên từ 0 đến RAN_MAX
• Ví dụ 2: Sinh một số ngẫu nhiên từ 0 đến 10
int number = rand() % 11;
10/17/20148 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
1. Các hàm được định nghĩa sẵn
1.2 Bộ sinh số ngẫu nhiên
• Bài tập 3.2: (Click Me)
10/17/20149 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
2. Các hàm do người dùng định
nghĩa
2.1 Khai báo và định nghĩa hàm.
• Cú pháp khai báo hàm trả về một giá trị:
kiểu_trả_về Tên_Hàm (Danh sách đối số);
Trong đó:
• Danh sách đối số là các tham số được ngăn cách nhau bởi
dấu phẩy “,”:
Kiểu_1 Tham_số_1, Kiểu_2 Tham_số_2,,Kiểu_n Tham số n
• Kiểu trả về: int, double, long, boolean, char,
• Ví dụ: Khai báo hàm trả về tổng khối lượng của các đồ vật mà
mỗi cái nặng weightOfOne.
double totalWeight(int number, double weight);
10/17/201410 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
2. Các hàm do người dùng định
nghĩa
2.1 Khai báo và định nghĩa hàm.
• Cú pháp khai báo hàm không trả về giá trị:
void Tên_Hàm (Danh sách đối số);
Trong đó:
• Danh sách đối số là các tham số được ngăn cách nhau bởi
dấu phẩy “,”:
Kiểu_1 Tham_số_1, Kiểu_2 Tham_số_2,,Kiểu_n Tham số n
• Ví dụ: hiển thị thông điệp nói rằng fDegree độ F tương đượng
với cDegree độ c.
void showResults(double fDegree, double cDegree);
10/17/201411 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
2. Các hàm do người dùng định
nghĩa
2.1 Khai báo và định nghĩa hàm.
• Định nghĩa hàm: mô tả làm thế nào hàm tính được giá trị
trả về. Một định nghĩa hàm chứa tiêu đề hàm và theo sao
là phần thân hàm.
• Tiêu đề hàm tương tự như phần khai báo nhưng không có
dấu chấm phẩy ở vị trí kết thúc.
• Giá trị được trả về được xác định bằng các câu lệnh trong
thân hàm
• Phần thân hàm làm hoàn chỉnh phần định nghĩa hàm.
10/17/201412 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
2. Các hàm do người dùng định
nghĩa
2.1 Khai báo và định nghĩa hàm.
• Ví dụ 1: Định nghĩa hàm trả về tổng khối lượng của các
đồ vật mà mỗi cái nặng weightOfOne
• Chương trình minh họa: (Click Me)
10/17/201413 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
Định
nghĩa
hàm
Thân
hàm
2. Các hàm do người dùng định
nghĩa
2.1 Khai báo và định nghĩa hàm.
• Ví dụ 2: hiển thị thông điệp nói rằng fDegree độ F tương
đượng với cDegree độ c.
• Chương trình minh họa: (Click Me)
10/17/201414 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
Định
nghĩa
hàm
Thân
hàm
2. Các hàm do người dùng định
nghĩa
2.1 Khai báo và định nghĩa hàm.
• Bài tập 3.3: (Click Me)
• Bài tập 3.4 (Click Me)
10/17/201415 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
3. Quy tắc về phạm vi
3.1 Biến cục bộ
• Các biến được khai báo ở bên trong thân của một định
nghĩa hàm được gọi là cục bộ đối với hàm đó hoặc chúng
ta nói rằng hàm đó là phạm vi của các biến này.
• Nếu một biến là cục bộ đối với một hàm thì bạn có thể có
các biến khác có cùng tên mà được khai báo ở bên trong
một định nghĩa hàm khác, chúng sẽ là hai biến khác nhau,
mặc dù chúng có cùng tên.
10/17/201416 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
3. Quy tắc về phạm vi
3.1 Biến cục bộ
• Ví dụ:
10/17/201417 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
3. Quy tắc về phạm vi
3.2 Biến toàn cục
• Nếu biến hoặc hằng xuất hiện tại phần bắt đầu của
chương trình, bên ngoài thân của tất cả các hàm (và bên
ngoài thân của hàm main của chương trình), thì biến hoặc
hằng được đặt tên ấy được gọi là biến hoặc hằng toàn
cục và biến hoặc hằng được đặt tên này có thể sử dụng
trong bất kì định nghĩa hàm nào ở sau định nghĩa hằng
đấy
10/17/201418 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
3. Quy tắc về phạm vi
3.2 Biến toàn cục
• Ví dụ biến và hằng toàn cục:
10/17/201419 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
3. Quy tắc về phạm vi
3.2 Biến toàn cục
• Bài tập 3.5: (Click Me)
10/17/201420 Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi
EOF!
10/17/2014Nguyễn Xuân Hùng – Khoa CNTT – ĐH Thủy Lợi21
Các file đính kèm theo tài liệu này:
- nnlt_3_1_ham_1761_1993527.pdf