Danh mục

Bài giảng Lập trình nâng cao: Bài 3 - Hoàng Thị Điệp

Số trang: 43      Loại file: pdf      Dung lượng: 603.44 KB      Lượt xem: 22      Lượt tải: 0    
10.10.2023

Phí tải xuống: 11,000 VND Tải xuống file đầy đủ (43 trang) 0
Xem trước 5 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài 3 - Căn bản về hàm. Chương này hướng dẫn sử dụng một số hàm có sẵn trong thư viện và viết hàm của riêng bạn. Nội dung chính của chương gồm: Các hàm định nghĩa sẵn, các hàm không có sẵn, các quy tắc về phạm vi hoạt động. Mời tham khảo.
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình nâng cao: Bài 3 - Hoàng Thị ĐiệpBài 3: Căn bản về hàm Giảng viên: Hoàng Thị Điệp Khoa Công nghệ Thông tin – ĐH Công Nghệ Chapter 3 Function BasicsCopyright © 2010 Pearson Addison-Wesley.All rights reserved Mục tiêu bài học• Các hàm định nghĩa sẵn – Hàm có trả về giá trị – Hàm không trả về giá trị• Các hàm không có sẵn – Khai báo hàm, Định nghĩa hàm, Gọi hàm – Hàm đệ quy• Các quy tắc về phạm vi hoạt động – Biến cục bộ – Hằng toàn cục và biến toàn cục – Khối, phạm vi lồng nhauDTH INT2202 Giới thiệu về hàm• Là các khối tạo nên chương trình• Thuật ngữ trong các ngôn ngữ lập trình khác: – Thủ tục, chương trình con, phương thức – Trong C++: hàm• I-P-O – Input – Process – Output – Là các phần cơ bản cấu thành chương trình – Dùng hàm cho từng phần nàyDTH INT2202 Các hàm định nghĩa sẵn• Ta có th ể dùng rất nhiều hàm có sẵn trong các thư viện!• Có hai loại: – Những hàm có trả về giá trị – Những hàm không trả về giá trị (void)• Ta ph ải #include thư viện phù hợp – Ví dụ: • , (là những thư viện gốc C”) • (để dùng cout, cin)DTH INT2202 Sử dụng hàm định nghĩa sẵn• Có rất nhiều hàm toán học – Có thể thấy trong thư viện – Hầu hết trả về một giá trị (“đáp số”)• Ví dụ: theRoot = sqrt(9.0); – Các thành phần: sqrt = tên của hàm trong thư viện theRoot = biến dùng để ghi đáp số 9.0 = đối số hay “đầu vào” của hàm – Theo I-P-O: • I = 9.0 • P = “tính căn bậc hai • O = 3, là giá trị trả về của hàm, sẽ được gán cho theRootDTH INT2202 Lời gọi hàm• Trở lại phép gán: theRoot = sqrt(9.0); – Biểu thức sqrt(9.0) được gọi là lời gọi hàm (function call hay function invocation) – Đối số trong một lời gọi hàm (9.0) có thể là một giá trị hằng, một biến hoặc một biểu thức – Bản thân lời gọi có thể là một phần của một biểu thức: • bonus = sqrt(sales)/10; • Bất cứ nơi nào là hợp lệ cho kiểu trả về của hàm thì bạn có thể đặt lời gọi hàm.DTH INT2202 Ví dụ lớn hơn: Display 3.1 Một hàm có sẵn có trả về một giá trị (1/2)DTH INT2202 Ví dụ lớn hơn: Display 3.1 Một hàm có sẵn có trả về một giá trị (2/2)DTH INT2202 Các hàm định nghĩa sẵn (tiếp)• #include – Thư viện này chứa các hàm: • abs() // Trả về giá trị tuyệt đối của một biến int • labs() // Trả về giá trị tuyệt đối của một biến long int • *fabs() // Trả về giá trị tuyệt đối của một biến float – *fabs() thực ra nằm trong thư viện ! • Có thể gây bối rối • Hãy nhớ rằng các thư viện được bổ sung dần dần sau khi C++ “chào đời” • Hãy tham khảo chi tiết ở các phụ lục/các sách hướng dẫn sử dụngDTH INT2202 Các hàm toán học• pow(x, y) – Trả về x mũ y double result, x = 3.0, y = 2.0; result = pow(x, y); cout Nói thêm về hàm toán học: Display 3.2 Một số hàm định nghĩa sẵn (1/2)DTH INT2202 Nói thêm về hàm toán học: Display 3.2 Một số hàm định nghĩa sẵn (2/2)DTH INT2202 Các hàm void định nghĩa sẵn• Không có giá trị trả về• Làm một việc gì đó nhưng không cho bạn một “đáp số”• Khi được gọi, bản thân nó là một lệnh – exit(1); // không có giá trị trả về // do đó không dùng được trong phép gán • Lệnh này kết thúc chương trình • Các hàm void vẫn có thể có đối số• Tất cả các đặc điểm đều giống hệt hàm “có trả về một giá trị” – Chúng đơn giản không trả về một giá trị mà thôi!DTH INT2202 Sinh số ngẫu nhiên• Trả về một số được chọn ngẫu nhiên• Dùng để viết chương trình mô phỏng hay games – rand() • Không đối số • Trả về một số trong khoảng 0 đến RAND_MAX – Scaling: phép vị tự/ co dãn biên độ • Ép số ngẫu nhiên này vào khoảng nhỏ hơn rand() % 6 • Trả về một giá trị ngẫu nhiên giữa 0 & 5 – Shifting: phép tịnh tiến rand() % 6 + 1 • Tịnh tiến miền giá trị thành từ 1 đến 6 (có thể mô phỏng kết quả tun ...

Tài liệu được xem nhiều: