Trang chủKhóa học

Thư viện toán trong C

0 phút đọc

Chúng ta đã từng sử dụng 2 hàm printf()scanf() trong thư viện stdio.h. Các bạn phải hiểu rằng còn nhiều thư viện khác nữa, mỗi thư viện sẽ chứa những hàm với những cụm chức năng riêng biệt.

Và ở bài trước chúng ta đã tìm hiểu qua những phép tính toán đơn giản trong C, hôm nay chúng ta sẽ cùng tìm hiểu những phép tính toán phức tạp hơn và hiệu quả hơn thông qua một thư viện hỗ trợ mới là math.h, nó chứa những hàm xử lý toán học đã được viết trước.

Các hàm xử lý toán học trong thư viện math.h

STTTên hàmMô tả
1double cos(double x)Trả về cos của một góc radian x.
2double sin(double x)Trả về sin của một góc radian x.
3double exp(double x)Trả về giá trị của e mũ x.
4double ldexp(double x, int exponent)Trả về x * 2^exp.
5double log(double x)Trả về logarit tự nhiên (logarit cơ số) của x.
6double log10(double x)Trả về logarit trong (logarit cơ số 10) của x.
7double pow(double x, double y)Trả về x mũ y.
8double sqrt(double x)Trả về căn bậc hai của x.
9double ceil(double x)Trả về giá trị nguyên nhỏ nhất lớn hơn hoặc bằng x.
10double fabs(double x)Trả về giá trị tuyệt đối của x.
11double floor(double x)Trả về giá trị nguyên lớn nhất nhỏ hơn hoặc bằng x.
12double fmod(double x, double y)Trả về số dư còn lại của x chia cho y.

Một số ví dụ minh hoạ:

Hàm fabs trong C

Hàm này sẽ trả về giá trị tuyệt đối của một số, trong toán học viết là | |.

Ví dụ:

#include <stdio.h>
#include <math.h>
int main() {
    int a;
    a = fabs(-5);
    printf("a = %d", a);
}
Kết quả

a = 5

Hàm ceil trong C

Hàm này sẽ trả về giá trị dạng số nguyên nếu như ta đưa cho nó một số thực. Hay chúng ta còn gọi là làm tròn số, nhưng hàm ceil sẽ luôn làm tròn giá trị lên (tăng giá trị).

Ví dụ:

#include <stdio.h>
#include <math.h>
int main() {
    int a;
    int b;
    a = ceil(5.125);
    a = ceil(5.7);
    printf("a = %d, b = %d", a, b);
}
Kết quả

a = 6, b = 6

Hàm floor trong C

Trái ngược với hàm ceil, hàm floor sẽ luôn làm tròn giá trị xuống (giảm giá trị).

Ví dụ:

#include <stdio.h>
#include <math.h>
int main() {
    int a;
    int b;
    a = ceil(5.125);
    a = ceil(5.7);
    printf("a = %d, b = %d", a, b);
}
Kết quả

a = 5, b = 5

Hàm pow trong C

Hàm này cho phép tính lũy thừa một số. Chúng ta phải chỉ ra cho nó 2 giá trị: số hạng và cấp lũy thừa của số đó. Đây là cấu trúc của hàm này:

pow(number, exponential)

Ví dụ:

#include <stdio.h>
#include <math.h>
int main() {
    int a = 4;
    int b = 3;
    int c = pow(a, b); // tương đương pow(4, 3) <=> 4^3
    printf("c = %d", c);
}
Kết quả

c = 64

Hàm sqrt trong C

Hàm này sẽ tính căn bậc 2 của một số được truyền vào. Giá trị trả về có thể là số nguyên hoặc số thập phân.

Ví dụ:

#include <stdio.h>
#include <math.h>
int main() {
    int a;
    double b;
    a = sqrt(9);
    b = sqrt(15);
    printf("a = %d, b = %lf", a, b);
}
Kết quả

a = 3, b = 3.872983

Hàm exp trong C

Hàm này sẽ tính exponential, hay còn gọi là lũy thừa cơ số e. Trả về giá trị là một số thập phân.

Ví dụ:

#include <stdio.h>
#include <math.h>
int main() {
    double a;
    a = exp(5); // tương đương e^5
    printf("a = %lf", a);
}
Kết quả

a = 148.413159

Avatar TechMely Team
Được viết bởi

TechMely Team

Chẳng có gì trở nên dễ dàng hơn. Chỉ là bạn trở nên mạnh mẽ hơn mà thôi.

Bình luận

Khoá học javascript từ cơ bản đến chuyên sâuYoutube TechMely