Toán học#

Giới thiệu#

Thư viện chuẩn C++ cung cấp các chức năng toán học cơ bản thông qua <cmath>, được hỗ trợ trong VEXcode IQ. Các hàm này cho phép bạn thực hiện các phép toán thông thường như lượng giác, làm tròn, lũy thừa, v.v.

Sử dụng chúng để tính toán vị trí, góc, khoảng cách hoặc thực hiện chuyển đổi giữa độ và radian.

Dưới đây là danh sách các hàm toán học, hằng số và tiện ích có sẵn:

Các hàm số toán học thông dụng – Các công cụ toán học phổ biến.

  • abs – Trả về giá trị tuyệt đối của một số.

  • fmin – Trả về giá trị nhỏ nhất trong các giá trị đầu vào.

  • fmax – Trả về giá trị lớn nhất trong các giá trị đầu vào.

  • pow – Nâng một số lên lũy thừa.

Hằng số – Các giá trị được xác định trước từ <cmath>.

  • M_PI – Hằng số π (pi).

  • M_E – Số Euler, cơ số của logarit tự nhiên.

Lượng giác – Tính toán các góc và mối quan hệ giữa các cạnh.

  • sin – Sin của một góc tính bằng radian.

  • cos – Cosin của một góc tính bằng radian.

  • tan – Tangent của một góc tính bằng radian.

  • atan – Arctangent của một giá trị tính bằng radian.

  • atan2 – Arctangent của y/x tính bằng radian, xét theo góc phần tư.

  • asin – Arcsin của một giá trị tính bằng radian.

  • acos – Arccosin của một giá trị tính bằng radian.

Làm tròn & Giá trị tuyệt đối – Điều chỉnh độ chính xác hoặc hướng.

  • ceil – Làm tròn lên số nguyên gần nhất.

  • floor – Làm tròn xuống số nguyên gần nhất.

  • trunc – Loại bỏ phần thập phân.

Lũy thừa và Logarit – Tính lũy thừa, căn bậc hai và logarit.

  • sqrt – Trả về căn bậc hai.

  • exp – Tính e mũ x.

  • log – Logarit tự nhiên (cơ số e).

  • log10 – Logarit cơ số 10.

Các phép toán số thực dấu phẩy động – Kiểm tra hoặc phân tích giá trị dấu phẩy động.

  • fmod – Phần dư với dấu của số bị chia.

  • copysign – Trả về một giá trị có dấu của một giá trị khác.

Các hàm toán học thông dụng#

abs#

Hàm này trả về giá trị tuyệt đối của một số, loại bỏ dấu âm.

Available Functions

1 — Trả về giá trị tuyệt đối của một số nguyên.

int abs( int x );

2 — Trả về giá trị tuyệt đối của một số thực.

double abs( double x );

Parameters

Tham số

Kiểu

Sự miêu tả

x

int or double

Một số nguyên hoặc số thực.

Return Values

Trả về giá trị tuyệt đối của dữ liệu đầu vào cùng kiểu dữ liệu.

Examples
// Display the absolute value of -10
Brain.Screen.print("%d", abs(-10));

// Output: 10

fmin#

Trả về giá trị nhỏ hơn trong hai giá trị dưới dạng số thực (double).

Available Functions
double fmin( double value1, double value2 );

Parameters

Tham số

Kiểu

Sự miêu tả

value1

double

Giá trị đầu tiên cần so sánh.

value2

double

Giá trị thứ hai cần so sánh.

Return Values

Trả về một cặp số thực double biểu thị giá trị nhỏ hơn trong hai giá trị đầu vào.

Examples
// Display the lower of two values
Brain.Screen.print("%f", fmin(7, 4));

// Output: 4.000000

fmax#

Trả về giá trị lớn hơn trong hai giá trị dưới dạng số thực (double).

Available Functions
double fmax( double value1, double value2 );

Parameters

Tham số

Kiểu

Sự miêu tả

value1

double

Giá trị đầu tiên cần so sánh.

value2

double

Giá trị thứ hai cần so sánh.

Return Values

Trả về một cặp số thực double biểu thị giá trị lớn hơn trong hai giá trị đầu vào.

Examples
// Display the higher of two values
Brain.Screen.print("%f", fmax(7, 4));

// Output: 7.000000

pow#

Trả về một số được nâng lên lũy thừa dưới dạng số thực (double).

Available Functions
double pow( double base, double exponent );

Parameters

Tham số

Kiểu

Sự miêu tả

base

double

Số cơ sở.

exponent

double

Số mũ.

Return Values

Trả về một số thực double thị cơ số được nâng lên lũy thừa của số mũ.

Examples
// Display 2 to the power of 3
Brain.Screen.print("%f", pow(2, 3));

// Output: 8.000000

Hằng số#

Hằng số là các giá trị được xác định trước và không thay đổi trong suốt dự án. Chúng có thể được sử dụng trong các phép tính mà không cần định nghĩa hoặc gán giá trị nào.

M_PI#

M_PI biểu thị hằng số toán học π, tỉ lệ giữa chu vi và đường kính của một đường tròn.

Available Constants
const double M_PI;

Parameters

Hằng số này không có tham số.

Return Values

Trả về hằng số toán học π dưới dạng double.

Examples
// Calculate the area of a circle with radius 5
double area = M_PI * 5 * 5;

Brain.Screen.print("%f", area);  

// Output: 78.539816

M_E#

Hằng số toán học e (số Euler), cơ số của logarit tự nhiên.

Available Constants
const double M_E;

Parameters

Hằng số này không có tham số.

Return Values

Trả về hằng số toán học e dưới dạng double.

Examples
// Calculate e raised to the power of 2
double result = pow(M_E, 2);

Brain.Screen.print("%f", result);  

// Output: 7.389056

Lượng giác#

sin#

Hàm này tính sin của một góc theo radian và trả về giá trị kiểu double.

Available Functions
double sin( double x );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Một số thực biểu thị góc tính bằng radian.

Return Values

Returns a double representing the sine of the angle.

Examples
// Convert 30 degrees to radians
double radians = 30 * M_PI / 180.0;

// Display the sine of 30 degrees
Brain.Screen.print("%f", sin(radians));

// Output: 0.500000

cos#

Hàm này tính cosin của một góc theo radian và trả về giá trị kiểu double.

Available Functions
double cos( double x );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Một số thực biểu thị góc tính bằng radian.

Return Values

Returns a double representing the cosine of the angle.

Examples
// Convert 60 degrees to radians
double radians = 60 * M_PI / 180.0;

// Display the cosine of 60 degrees
Brain.Screen.print("%f", cos(radians));

// Output: 0.500000

tan#

Hàm này tính tang của một góc theo radian và trả về giá trị kiểu double.

Available Functions
double tan( double x );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Một số thực biểu thị góc tính bằng radian.

Return Values

Returns a double representing the tangent of the angle.

Examples
// Convert 45 degrees to radians
double radians = 45 * M_PI / 180.0;

// Compute tangent of 45 degrees
Brain.Screen.print("%f", tan(radians));

// Output: 1.000000

atan#

Hàm này tính hàm arctan (arc tangent) của một số và trả về một giá trị kiểu double biểu thị góc tính bằng radian.

Available Functions
double atan( double x );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Giá trị kép.

Return Values

Trả về một giá double biểu thị hàm arctan theo radian.

Examples
// Calculate the arc tangent of 1 in degrees
double degrees = atan(1.0) * 180.0 / M_PI;

Brain.Screen.print("%f", degrees);

// Output: 45.000000

atan2#

Hàm này tính giá trị chính của hàm arctan của y/x và trả về một giá trị kiểu double biểu thị góc tính bằng radian.

Available Functions
double atan2( double y, double x );

Parameters

Tham số

Kiểu

Sự miêu tả

y

double

Một giá trị kiểu double biểu thị tọa độ y.

x

double

Một giá trị kiểu double biểu thị tọa độ x.

Return Values

Trả về một giá double biểu thị arctan của y/x tính bằng radian.

Examples
// Calculate the inverse tangent of 1/1 in degrees
double degrees = atan2(1.0, 1.0) * 180.0 / M_PI;

Brain.Screen.print("%f", degrees);

// Output: 45.000000

asin#

Hàm này tính toán hàm nghịch đảo sin (arc sin) của một số và trả về một giá trị kiểu double biểu thị góc tính bằng radian.

Available Functions
double asin( double x );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Một số thực nằm giữa -1 và 1.

Return Values

Returns a double representing the arc sine in radians.

Examples
// Calculate the arc sine of 0.5 in degrees
double degrees = asin(0.5) * 180.0 / M_PI;

Brain.Screen.print("%f", degrees);

// Output: 30.000000

acos#

Hàm này tính toán hàm cosin nghịch đảo (arc cosin) của một số và trả về một giá trị kiểu double biểu thị góc tính bằng radian.

Available Functions
double acos( double x );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Một số thực nằm giữa -1 và 1.

Return Values

Trả về một giá double biểu thị arccos tính bằng radian.

Examples
// Calculate the arc cosine of 0.5 in degrees
double degrees = acos(0.5) * 180.0 / M_PI;

Brain.Screen.print("%f", degrees);  

// Output: 60.000000

Làm tròn và giá trị tuyệt đối#

ceil#

Trả về một số được làm tròn lên dưới dạng số thực (double).

Available Functions
double ceil( double x );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Số gấp đôi cần được làm tròn lên.

Return Values

Trả về một giá double biểu thị số nguyên nhỏ nhất lớn hơn hoặc bằng x.

Examples
// Round up 9.7
Brain.Screen.print("%f", ceil(9.7));

// Output: 10.000000

floor#

Trả về một số được làm tròn xuống dưới dạng số thực (double).

Available Functions
double floor( double x );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Số đôi cần được làm tròn xuống.

Return Values

Trả về một giá double biểu thị số nguyên lớn nhất nhỏ hơn hoặc bằng x.

Examples
// Round down 9.7
Brain.Screen.print("%f", floor(9.7));

// Output: 9.000000

trunc#

Hàm này trả về một số dưới dạng số thực (double), với phần thập phân được đặt bằng không.

Available Functions
double trunc( double x );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Một số thực cần được cắt bớt.

Return Values

Trả về một số thực double đã loại bỏ phần thập phân.

Examples
// Truncate 9.7
Brain.Screen.print("%f", trunc(9.7));

// Output: 9.000000

Lũy thừa và Logarit#

sqrt#

Trả về căn bậc hai của một số.

Available Functions
double sqrt( double x );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Một số thực kép không âm.

Return Values

Trả về một số thực double thị căn bậc hai của x.

Examples
// Display the square root of 121
Brain.Screen.print("%f", sqrt(121));

// Output: 11.000000

exp#

Tính lũy thừa của một số.

Available Functions
double exp( double x );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Một biến kiểu double để tính lũy thừa của .

Return Values

Trả về một số thực double biểu thị e mũ x.

Examples
// Calculate e raised to the power of 1
double result = exp(1);

Brain.Screen.print("%f", result);
  
// Output: 2.718282

log#

Tính logarit tự nhiên của một số.

Available Functions
double log( double x );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Một cặp dương.

Return Values

Trả về một số thực double biểu thị logarit tự nhiên của x.

Examples
// Calculate the natural logarithm (base e) of e
double result = log(M_E);

Brain.Screen.print("%f", result);  
  
// Output: 1.000000

log10#

Tính logarit cơ số 10 của một số.

Available Functions
double log10( double x );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Một cặp dương.

Return Values

Returns a double representing the base-10 logarithm of x.

Examples
// Calculate the base-10 logarithm of 1000
double result = log10(1000);

Brain.Screen.print("%f", result);  
  
// Output: 3.000000

Các phép toán dấu phẩy động#

fmod#

Hàm này trả về phần dư của phép chia trong khi vẫn giữ nguyên dấu của số bị chia.

Available Functions
double fmod( double x, double y );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Cổ tức.

y

double

Số chia.

Return Values

Trả về một cặp số thực double biểu thị phần dư của phép chia x/y với dấu của x.

Examples
// Calculate remainder of 10 / -3
// that preserves the sign of 10
double result = fmod(10.0, -3.0);

Brain.Screen.print("%f", result);  

// Output: 1.000000

copysign#

Trả về một số có độ lớn là x và dấu là y.

Available Functions
double copysign( double x, double y );

Parameters

Tham số

Kiểu

Sự miêu tả

x

double

Giá trị có độ lớn sẽ được sử dụng.

y

double

Giá trị mà dấu của nó sẽ được sử dụng.

Return Values

Trả về một giá double với độ lớn của x và dấu của y.

Examples
// Return -10 with the sign of -3 (negative)
double result = copysign(10, -3);

Brain.Screen.print("%f", result);  
  
// Output: -10.000000