Wiki

Khái niệm hàm (function) trong lập trình và minh họa với C++

Rate this post

Trong bài viết này viethanbinhduong.edu.vn sẽ chia sẻ chuyên sâu kiến thức của Hàm là gì để chia sẻ cho bạn đọc

Bài này sẽ giới thiệu về khái niệm hàm (function) cũng như cách xây dựng hàm. Các bạn cần nắm vững hàm bởi các bạn sẽ sử dụng hàm rất nhiều và hàm giúp bạn tổ chức chương trình tốt hơn.

1. Tại sao phải sử dụng hàm (function)

Ví dụ, cần viết chương trình tính S = a! + b! + c! với a, b, c là 3 số nguyên dương nhập từ bàn phím.

3 đoạn lệnh nhập a, b, c > 0

do { cout<<“Nhap mot so nguyen duong:”; cin>>a; } while (a <= 0); do { cout<<“Nhap mot so nguyen duong:”; cin>>b; } while (b <= 0); do { cout<<“Nhap mot so nguyen duong:”; cin>>c; } while (c <= 0);

Đọc thêm:  Giá xe Dream Việt 2023: Mẫu xe mới nhất của nhà sản xuất Dream

3 đoạn lệnh tính s1 = a!, s2 = b!, s3 = c!

//s1 = a! = 1 * 2 * … * a s1 = 1; for (i = 2; i <= a ; i++) s1 = s1 * i; //s2 = b! = 1 * 2 * … * b s2 = 1; for (i = 2; i <= b ; i++) s2 = s2 * i; //s3 = c! = 1 * 2 * … * c s3 = 1; for (i = 2; i <= c ; i++) s3 = s3 * i;

Nhận xét:

– Cùng một công việc có tính chất giống nhau được thực hiện nhiều lần

– Code sẽ dài dòng và rối rắm

Giải pháp: Viết 1 lần và sử dụng nhiều lần.

Đoạn lệnh nhập tổng quát, với n = a, b, c

do { cout << “Nhap mot so nguyen duong: “; cin >> n; } while (n <= 0);

Đoạn lệnh tính giai thừa tổng quát với n = a, b, c

//s = n! = 1 * 2 * … * n s = 1; for (i = 2; i <= n ; i++) s = s * i;

Để sử dụng những đoạn lệnh tổng quát này nhiều lần, ta đưa chúng vào hàm (function).

2. Khái niệm hàm (function)

Hàm (function) là một đoạn chương trình có tên, đầu vào và đầu ra. Hàm có chức năng giải quyết một số vấn đề chuyên biệt cho chương trình chính. Hàm được gọi nhiều lần với các tham số khác nhau.

Hàm là một đơn vị độc lập của chương trình, không cho phép xây dựng một hàm bên trong một hàm khác.

Một chương trình bao gồm một hoặc nhiều hàm. Trong đó, hàm main() là thành phần bắt buộc của chương trình.

3. Cú pháp khai báo hàm và các bước viết hàm

Cú pháp:

<kiểu trả về> <tên hàm>([danh sách tham số])

Đọc thêm:  Quần què là gì? Lý giải nguồn gốc xuất hiện “cái quần què”

{

<các câu lệnh>

[return <giá trị>;]

}

Trong đó:

<kiểu trả về>: kiểu dữ liệu bất kỳ trong C++ (char, int, float,…). Nếu không trả về thì là void.

<tên hàm>: theo quy tắc đặt tên định danh.

<danh sách tham số>: tham số hình thức đầu vào giống khai báo biến, cách nhau bằng dấu “,”

<giá trị>: trả về cho hàm qua lệnh return.

Giá trị trả về của hàm

– Được xác định dựa vào mục đích của hàm.

– Trong thân hàm, phải trả về đúng <kiểu trả về> đã định ban đầu.

– Nếu các hàm không trả về giá trị thì phải khai báo kiểu void.

Ví dụ:

int TinhTong(int a, int b) { int S; … return S; }

Các bước viết hàm

Cần xác định các thông tin sau:

    • Tên hàm.
    • Hàm sẽ thực hiện công việc gì.
    • Các đầu vào (nếu có).
    • Đầu ra (nếu có).

Lời gọi hàm

Để sử dụng hàm thì cần định nghĩa hàm trước và gọi hàm.

#include <iostream> using namespace std; // declaring a function void greet() { cout << “Hello there!”; } int main() { // calling the function greet(); return 0; }

Lưu ý: Trong C++, hàm cần được định nghĩa trước rồi mới gọi hàm, định nghĩa sau sẽ bị lỗi. Nếu lời gọi hàm trong main() mà định nghĩa hàm ở phía dưới main() sẽ bị lỗi.

Chương trình sau sẽ báo lỗi chưa khai báo hàm greet();

#include <iostream> using namespace std; int main() { // calling the function greet();// error when calling the function return 0; } // declaring a function void greet() { cout << “Hello there!”; }

Đọc thêm:  Bánh xèo bao nhiêu calo ? Ăn bánh xèo có mập không? - 12 Kim Mã

4. Một số ví dụ sử dụng hàm

Chương trình C++ in ra số nguyên và số thực

#include <iostream> using namespace std; // display a number void displayNum(int n1, float n2) { cout << “The int number is ” << n1<<endl; cout << “The double number is ” << n2<<endl; } int main() { int num1 = 5; double num2 = 5.5; // calling the function displayNum(num1, num2); system(“pause”); }

Kết quả

The int number is 5 The double number is 5.5

Chương trình C++ tính tổng 2 số nguyên

#include <iostream> using namespace std; // declaring a function int add(int a, int b) { return (a + b); } int main() { int a; int b; cout<<“Input a:”; cin>>a; cout<<“Input b:”; cin>>b; int sum; // calling the function and storing // the returned value in sum sum = add(a, b); cout << “Sum of “<<a<<” and “<<b<<” = ” << sum << endl; system(“pause”); }

Kết quả

Input a:100 Input b:78 Sum of 100 and 78 = 178

Khi sử dụng hàm, các bạn nên lưu ý kiểu trả về của hàm phải giống kiểu trả về của kết quả trong thân hàm.

Bài trước và bài sau trong môn học<< Cách sử dụng câu lệnh break, continue và go to trong C++Các loại hàm (function) có thể được định nghĩa trong C++ >>

Bá Duy

Bá Duy hiện tại là người chịu trách nhiệm chia sẻ nội dung trên trang viethanbinhduong.edu.vn với 5 năm kinh nghiệm chia sẻ kiến thức giáo dục tại các website lớn nhỏ.

Related Articles

Back to top button