Bài giảng môn học Tin đại cương: Bài 4 - Lý Anh Tuấn
lượt xem 2
download
Bài 4 - Hàm và thủ tục. Trong bài này người học sẽ tìm hiểu những nội dung sau: Phân rã bài toán, hàm, thủ tục, các cách truyền tham số, phạm vi và vòng đời. Mời các bạn cùng tham khảo để nắm bắt các nội dung chi tiết.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng môn học Tin đại cương: Bài 4 - Lý Anh Tuấn
- Môn học Tin đại cương Lý Anh Tuấn Bộ môn Khoa học máy tính, Khoa Công nghệ thông tin, Trường đại học Thủy Lợi 1
- Buổi 4: Hàm và thủ tục Phân rã bài toán Hàm Thủ tục Các cách truyền tham số Phạm vi và vòng đời 2
- Phân rã bài toán Bài toán lớn có thể được chia thành các bài toán nhỏ tương đối độc lập, mỗi bài toán nhỏ có thể được giải quyết bằng một chương trình con (hàm hoặc thủ tục) Hàm: Trả về giá trị thông qua lời gọi Không thao tác với dữ liệu bên ngoài hàm Không gây ra hiệu ứng phụ Thủ tục: Không trả về giá trị thông qua lời gọi Làm thay đổi giá trị của các biến tham chiếu Có thể gây ra các hiệu ứng phụ 3
- Khai báo hàm Cách khai báo hàm Kiểu_dữ_liệu Tên_hàm(danh_sách_tham_số_hình_thức); Kiểu_dữ_liệu là kiểu dữ liệu trả về của hàm danh_sách_tham_số_hình_thức là các cặp kiểu dữ liệu, tên tham số cách nhau bởi dấu phẩy Ví dụ: double binhphuong(double x); int nhan2so(int m, int n); int phepcong(int a, int b) 4
- Định nghĩa hàm Định nghĩa hàm có dạng Kiểu_dữ_liệu Tên_hàm(danh_sách_tham_số_hình_thức) { Các câu lệnh } Các câu lệnh còn gọi là thân hàm cung cấp cách thức tính toán để sinh ra kết quả Ví dụ: 1. int phepcong(int a, int b){ 2. int r; 3. r=a+b; 4. return(r); 5. } 5
- Hàm Trong phần thân hàm có câu trả về dạng: return biểu_thức; // ví dụ: return(r); Câu lệnh này làm kết thúc hàm và trả về giá trị của biểu thức thông qua lời gọi hàm Lời gọi hàm có dạng Tên_hàm(danh_sách_tham_số_thực_sự) ví dụ: z = phepcong(5, 3); Giá trị của các tham số thực sự được dùng để khởi tạo giá trị cho các tham số hình thức tương ứng 6
- Hàm Các tham số hình thức Tên hàm 1. #include 2. using namespace std; 3. int phepcong(int a, int b) 4. { 5. int r; Định nghĩa hàm 6. r=a+b; 7. return (r); 8. } 9. int main(){ Các tham số thực sự 10. int z; 11. z = phepcong(5,3); 12. cout
- Hàm Các tham số hình thức Tên hàm 1. #include 2. using namespace std; 3. int phepcong(int a, int b); Khai báo hàm 4. int main(){ Các tham số thực sự 5. int z; 6. z = phepcong(5,3); Lời gọi hàm 7. cout
- Khai báo thủ tục Khai báo và định nghĩa thủ tục giống với khai báo và định nghĩa hàm trừ việc nó không trả về giá trị Cách khai báo thủ tục void Tên_thủ_tục(danh_sách_tham_số_hình_thức); ví dụ: void Loichao(); Định nghĩa thủ tục có dạng void Tên_thủ_tục(danh_sách_tham_số_hình_thức) { Các câu lệnh } nếu có câu lệnh trả về thì chỉ cần viết dưới dạng return; 9
- Thủ tục 10
- Thủ tục 11
- Các cách truyền tham số Truyền theo tham trị: Truyền giá trị cho các tham số hình thức Các hàm và thủ tục đã định nghĩa đều sử dụng cách truyền theo tham trị Truyền theo tham biến: Truyền nơi lưu trữ trong bộ nhớ của các biến thực sự cho các biến tham chiếu Biến tham chiếu được khai báo trong danh sách các tham số hình thức của thủ tục bằng theo cách: kiểu_dữ_liệu & tên_biến 12
- Truyền theo tham biến 13
- Các cách truyền tham số Truyền theo tham trị không làm thay đổi giá trị của các biến được truyền Truyền theo tham biến thì những tác động lên biến tham chiếu trong phần thân thủ tục đều ảnh hưởng đến biến được truyền 14
- Phạm vi của biến Biến toàn cục được khai báo bên ngoài tất cả các hàm Biến cục bộ được khai báo bên trong một hàm hoặc một khối lệnh Sau khi được khai báo, biến toàn cục có thể sử dụng ở bất cứ chỗ nào trong chương trình Phạm vi của biến cục bộ chỉ giới hạn trong khối lệnh (trong cặp {}) nơi nó được khai báo 15
- Phạm vi của biến Biến toàn cục Biến cục bộ 16
- Phạm vi và vòng đời Đa số các biến đều có phạm vi cục bộ Các khai báo hàm và thủ tục thường có phạm vi toàn cục. Các hằng cũng thường được khai báo ở phạm vi toàn cục 17
- Phạm vi và vòng đời Vòng đời là khoảng thời gian thuật toán có thể thực hiện việc đọc ghi giá trị cho biến Ví dụ: Vòng đời của i: từ dòng 1 đến dòng 9 Vòng đời của j: từ dòng 4 đến dòng 9 Vòng đời của k: k chỉ có vòng đời khi i=3 18
- Bài tập Nhập x từ bàn phím. Tính và hiển thị lên màn hình giá trị biểu thức sau: y = (a3 + 2a)/ln(b2+21) trong đó : a=2x +1 ; b=|x| +1 Viết hàm trả về phần nguyên của phép chia hai số nguyên Viết thủ tục trả về số đứng liền trước và số đứng sau của tham số thứ nhất, giá trị được trả về thông qua tham số thứ hai và thứ ba Viết chương trình con hoán đổi giá trị hai số thực 19
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng môn học Kỹ thuật ghép nối máy tính - Nguyễn Thành Nghĩa
79 p | 753 | 265
-
Bài giảng môn học Các đối tượng của ASP.NET
33 p | 305 | 112
-
BÀI GIẢNG MÔN: PHƯƠNG PHÁP LẬP TRÌNH
309 p | 200 | 29
-
Bài giảng môn Cơ sở dữ liệu - Bài 4: Ngôn ngữ đại số quan hệ (ĐH Công nghệ Thông tin)
40 p | 156 | 27
-
Bài giảng môn Toán tin - Chương 5: Đại số Bool
70 p | 143 | 14
-
Bài giảng môn Tin học đại cương: Phần 1 - Kiến thức cơ bản
66 p | 100 | 13
-
Bài giảng môn Tin học đại cương - ĐH Bách khoa TP.HCM
349 p | 104 | 13
-
Bài giảng môn Tin học ứng dụng (Phần 2): Chương 3 - Đại học Ngân hàng
118 p | 99 | 10
-
Bài giảng môn học Tin học đại cương (Dành cho bậc Đại học & Cao đẳng) - Nguyễn Vũ Duy
95 p | 22 | 7
-
Bài giảng môn học Tin đại cương: Bài 1 - Lý Anh Tuấn
36 p | 73 | 7
-
Bài giảng môn học Cơ sở tin học 1 - Trường Đại học Tôn Đức Thắng
47 p | 56 | 5
-
Bài giảng môn học Tin đại cương: Bài 3 - Lý Anh Tuấn
28 p | 51 | 3
-
Bài giảng môn học Tin đại cương: Bài 5 - Lý Anh Tuấn
27 p | 44 | 3
-
Bài giảng môn học Tin đại cương: Bài 7&8 - Lý Anh Tuấn
19 p | 47 | 3
-
Bài giảng môn học Tin đại cương: Bài 9&10 - Lý Anh Tuấn
26 p | 66 | 3
-
Bài giảng môn học Tin đại cương: Bài 2 - Lý Anh Tuấn
30 p | 45 | 3
-
Bài giảng môn học Tin đại cương: Bài 6 - Lý Anh Tuấn
20 p | 59 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn