Thư viện toán học math.h trong C – phptravels.vn

Trong bài này, bạn sẽ cũng Lập Trình Không Khó đi tìm tòi & sử dụng các hàm có sẵn trong thư viện math.h – thư viện toán học của ngôn từ C/C++. Thông qua việc sử dụng các hàm này sẽ cho các bạn 1 cái nhìn khẳng định về hàm trong ngôn từ lập trình, làm tiền đề để tất cả chúng ta tìm tòi tri thức hàm trong ngôn từ C. Nội dung này sẽ trình bày các hàm hay được dùng trong thư viện math.h & các ebook thiết yếu để các bạn có thể tra cứu khi cần.

Video chỉ dẫn sử dụng thư viện math.h

Video dưới đây sẽ chỉ dẫn bạn cách dùng các hàm thông dụng trong thư viện math.h & với mỗi hàm, sẽ có những chẳng hạn tương ứng để bạn hiểu & nắm được cách dùng.

Các hàm trong thư viện math.h

Sau đây là cú pháp & chẳng hạn của các hàm thông dụng trong thư viện toán học math.h, chúng ta nên lấy các chẳng hạn này để chạy thử. Hãy thử biến đổi code cũng như các tham số trong hàm để am hiểu hơn về hàm nhé.

Hàm lượng giác: sin, cos, tan, …

Dưới đây là cú pháp của hàm sin, các hàm khác có cú pháp & cách dùng tương đương.

1

2

3

4

 

double

sin

(

double

Ҳ

)

;

float

sin

(

float

Ҳ

)

;

long

double

sin

(

long

double

Ҳ

)

;

 

Các hàm trên trả về sin của một góc Ҳ, trong đó Ҳ được tính bằng radian. Tham số hàm sin nhận vào có thể là các kiểu dữ liệu số. Giá trị trả về là số thực kiểu float hoặc double.

Chẳng hạn 1 chương trình tính sin:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

 

/* sin example */

#include <stdio.hvàgt;      /* printf */

#include <math.h>       /* sin */

 

#define PI 3.14159265

 

int

main

(

)

{

  

double

param

,

result

;

  

param

=

30.0

;

  

result

=

sin

(

param*

PI

/

180

)

;

  

printf

(

“The sine of %f degrees is %f.n”

,

param

,

result

)

;

  

return

;

}

 

Kết quả chạy chương trình:

1

2

 

The sine of 30.000000 degrees is 0.500000.

 

Các hàm lượng giác còn sót lại, nếu bạn mong muốn xem cụ thể vui lòng đọc qua mục ebook số (1) ở cuối nội dung này.

Hàm exp() – Tính ex

Cú pháp:

1

2

3

4

 

double

exp

(

double

Ҳ

)

;

float

exp

(

float

Ҳ

)

;

long

double

exp

(

long

double

Ҳ

)

;

 

Chẳng hạn:

1

2

3

4

5

6

7

8

9

10

11

12

13

 

/* exp example */

#include <stdio.hvàgt;      /* printf */

#include <math.h>       /* exp */

 

int

main

(

)

{

  

double

param

,

result

;

  

param

=

5.0

;

  

result

=

exp

(

param

)

;

  

printf

(

“e^%f = %f.n”

,

param

,

result

)

;

  

return

;

}

 

Kết quả:

1

2

 

e^5.000000 = 148.413159.

 

Hàm logarit – log()

Cú pháp:

1

2

3

4

 

double

log

(

double

Ҳ

)

;

float

log

(

float

Ҳ

)

;

long

double

log

(

long

double

Ҳ

)

;

 

Chẳng hạn:

1

2

3

4

5

6

7

8

9

10

11

12

13

 

/* log example */

#include <stdio.hvàgt;      /* printf */

#include <math.h>       /* log */

 

int

main

(

)

{

  

double

param

,

result

;

  

param

=

5.5

;

  

result

=

log

(

param

)

;

  

printf

(

“log(%f) = %fn”

,

param

,

result

)

;

  

return

;

}

 

Kết quả:

1

2

 

log(5.500000) = 1.704748

 

Hàm pow() – Tính lũy thừa ab

Cú pháp:

1

2

3

4

 

double

pow

(

double

base

    

,

double

exponent

)

;

float

pow

(

float

base

      

,

float

exponent

)

;

long

double

pow

(

long

double

base

,

long

double

exponent

)

;

 

Chẳng hạn:

1

2

3

4

5

6

7

8

9

10

11

12

 

/* pow example */

#include <stdio.hvàgt;      /* printf */

#include <math.h>       /* pow */

 

int

main

(

)

{

  

printf

(

“7 ^ 3 = %fn”

,

pow

(

7.0

,

3.0

)

)

;

  

printf

(

“4.73 ^ 12 = %fn”

,

pow

(

4.73

,

12.0

)

)

;

  

printf

(

“32.01 ^ 1.54 = %fn”

,

pow

(

32.01

,

1.54

)

)

;

  

return

;

}

 

Kết quả:

1

2

3

4

 

7 ^ 3 = 343.000000

4.73 ^ 12 = 125410439.217423

32.01 ^ 1.54 = 208.036691

 

Hàm sqrt() – Tính căn bậc 2

Cú pháp:

1

2

3

4

 

double

sqrt

(

double

Ҳ

)

;

float

sqrt

(

float

Ҳ

)

;

long

double

sqrt

(

long

double

Ҳ

)

;

 

Chẳng hạn:

1

2

3

4

5

6

7

8

9

10

11

12

13

 

/* sqrt example */

#include <stdio.hvàgt;      /* printf */

#include <math.h>       /* sqrt */

 

int

main

(

)

{

  

double

param

,

result

;

  

param

=

1024.0

;

  

result

=

sqrt

(

param

)

;

  

printf

(

“sqrt(%f) = %fn”

,

param

,

result

)

;

  

return

;

}

 

Kết quả:

1

2

 

sqrt

(

1024.000000

)

=

32.000000

 

Cảnh báo: Bạn có thể truyền số nguyên vào hàm nhé.

Hàm abs() & fabs() – Tìm trị tuyệt đối

Hàm abs() thương được dùng để tìm trị tuyệt đối của số nguyên, còn hàm fabs() để tìm trị tuyệt đối của số thực.

Cảnh báo: Hai hàm này có sự độc đáo một tí trong C++, không những thế tất cả chúng ta đang học C nên mình không nhắc tới.

Chẳng hạn:

1

2

3

4

5

6

7

8

9

10

11

12

13

 

#include <stdio.hvàgt;    

#include <math.h>

 

int

main

(

)

{

  

printf

(

“nThe absolute value of 3.1416 is %fn”

,

fabs

(

3.1416

)

)

;

  

printf

(

“nThe absolute value of -10.6 is %fn”

,

fabs

(

10.6

)

)

;

  

printf

(

“nThe absolute value of 3 is %dn”

,

abs

(

3

)

)

;

  

printf

(

“nThe absolute value of -10 is %dn”

,

abs

(

10

)

)

;

  

return

;

}

 

Kết quả chạy:

1

2

3

4

5

 

The absolute value of 3.1416 is 3.141600

The absolute value of -10.6 is 10.600000

The absolute value of 3 is 3

The absolute value of -10 is 10

 

Ebook đọc qua