Toán học#

Giới thiệu#

Phần Toán học bao gồm cả các hàm Python tích hợp sẵn và mô-đun math đầy đủ, được tự động cài đặt trong VEXcode IQ (thế hệ thứ 2). Các công cụ này cho phép bạn thực hiện mọi thứ từ phép toán số học cơ bản đến lượng giác nâng cao, làm tròn và các phép toán logarit.

Sử dụng các hàm và hằng số này để tính toán vị trí, góc, khoảng cách và các giá trị số khác cho robot của bạn. Bạn cũng có thể chuyển đổi giữa độ và radian, đánh giá biểu thức và làm việc với các giá trị đặc biệt như vô cực và NaN.

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 tích hợp sẵn — Các công cụ toán học thông dụng được tích hợp sẵn trong Python.

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

  • round — Làm tròn một số đến số chữ số thập phân được chỉ định.

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

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

  • sum — Cộng tất cả các giá trị trong một iterable.

  • divmod — Trả về thương và số dư dưới dạng một bộ.

  • pow — Nâng một số lên lũy thừa, tùy chọn với số dư.

  • int — Chuyển đổi một giá trị thành số nguyên.

  • float — Chuyển đổi một giá trị thành số thập phân.

Constants — Predefined values from the math module.

  • math.pi — Hằng số π (pi).

  • math.tau — Hằng số tau (2π).

  • math.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.

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

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

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

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

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

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

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

  • math.degrees — Chuyển đổi radian sang độ.

  • math.radians — Chuyển đổi độ sang radian.

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

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

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

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

  • math.fabs — Trả về giá trị tuyệt đối dưới dạng số thực.

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

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

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

  • math.exp — Tính e mũ x.

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

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ị số thực.

  • math.modf — Trả về phần thập phân và phần nguyên của một số thực.

  • math.frexp — Phân tích một số thành phần định trị và số mũ.

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

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

  • math.ldexp — Tính x * (2 ** exp).

Chức năng tích hợp sẵn#

Python cung cấp một số hàm tích hợp sẵn cho phép bạn thực hiện các phép toán trong dự án của mình.

abs#

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

Usage:
abs(x)

Tham số

Sự miêu tả

x

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

# Get the absolute value of -10
abs_result = abs(-10)
brain.screen.print(abs_result)

# abs_result = 10

round#

round làm tròn một số đến số chữ số thập phân được chỉ định.

Usage:
round(x, ndigits)

Tham số

Sự miêu tả

x

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

ndigits

Tùy chọn. Số chữ số thập phân cần làm tròn. Mặc định là 0.

# Round 5.7 to the nearest integer
round_int_result = round(5.7)
brain.screen.print(round_int_result)

# round_int_result = 6

# Round 3.14159 to 2 decimal places
round_result = round(3.14159, 2)
brain.screen.print(round_result)

# round_result = 3.14

min#

Hàm min trả về giá trị nhỏ nhất từ ​​nhiều đối số hoặc một đối tượng có thể lặp lại.

Usage:
min(arg1, arg2, …) or min(sequence)

Tham số

Sự miêu tả

arg1, arg2, …

Các con số để so sánh.

sequence

Một danh sách, bộ dữ liệu hoặc chuỗi khác chứa các số.

# Get the smallest number from 3, 7, and 1
min_result = min(3, 7, 1)
brain.screen.print(min_result)

# min_result = 1

# Get the smallest value from a list
min_list_result = min([10, 4, 25, 1])
brain.screen.print(min_list_result)

# min_list_result = 1

max#

Hàm max trả về giá trị lớn nhất từ ​​nhiều đối số hoặc một đối tượng có thể lặp lại.

Usage:
max(arg1, arg2, …) or max(sequence)

Tham số

Sự miêu tả

arg1, arg2, …

Các con số để so sánh.

sequence

Một danh sách, bộ dữ liệu hoặc chuỗi khác chứa các số.

# Get the largest number from 3, 7, and 1
max_result = max(3, 7, 1)
brain.screen.print(max_result)

# max_result = 7

# Get the largest value from a list
max_list_result = max([10, 4, 25, 1])
brain.screen.print(max_list_result)

# max_list_result = 25

sum#

sum cộng tất cả các giá trị trong một đối tượng có thể lặp lại, với một giá trị bắt đầu tùy chọn.

Usage:
sum(sequence, start)

Tham số

Sự miêu tả

sequence

Một danh sách, bộ dữ liệu hoặc chuỗi khác chứa các số.

start

Tùy chọn. Giá trị cần cộng vào tổng. Mặc định là 0.

# Calculate the sum of a list of numbers
sum_result = sum([1, 2, 3, 4, 5])
brain.screen.print(sum_result)

# sum_result = 15

# Calculate the sum of a list with a starting value of 10
sum_with_start = sum([1, 2, 3], 10)
brain.screen.print(sum_with_start)

# sum_with_start = 16

divmod#

divmod trả về một bộ giá trị chứa thương và số dư của phép chia.

Usage:
divmod(a, b)

Tham số

Sự miêu tả

a

Cổ tức.

b

Số chia.

# Perform integer division and remainder of 10 / 3
divmod_result = divmod(10, 3)
brain.screen.print(divmod_result)

# divmod_result = (3, 1)

pow#

pow nâng một số lên lũy thừa và tùy chọn thực hiện phép toán lấy phần dư.

Usage:
pow(x, y, mod)

Tham số

Sự miêu tả

x

Số cơ sở.

y

Số mũ.

mod

Tùy chọn. Giá trị môđun. Nếu được cung cấp, trả về (x ** y) % mod.

# Calculate 2 raised to the power of 3
pow_result = pow(2, 3)
brain.screen.print(pow_result)

# pow_result = 8

int#

Hàm int chuyển đổi một số hoặc chuỗi thành số nguyên. Nó cũng hỗ trợ chuyển đổi cơ số khi chuyển đổi từ chuỗi.

Usage:
int(x, base)

Tham số

Sự miêu tả

x

Một số, chuỗi ký tự hoặc đối tượng khác cần chuyển đổi.

base

Tùy chọn. Cơ số số được sử dụng để chuyển đổi. Mặc định là 10.

# Convert a float to an integer to get rid of decimals
price = 19.99
price_int = int(price)
brain.screen.print("{} coins".format(price_int))

# Output: 19 coins

# Convert a string into an integer to use in calculations
user_input = "55"
user_number = int(user_input)
brain.screen.print(user_number * 2)

# Output: 110

float#

float chuyển đổi một số hoặc chuỗi ký tự thành số thập phân.

Usage:
float(x)

Tham số

Sự miêu tả

x

Một số, chuỗi ký tự hoặc đối tượng khác cần chuyển đổi.

# Convert division result to a float
num_apples = 6
num_people = 2
apples_per_person = float(num_apples) / num_people
brain.screen.print(apples_per_person)

# Output: 3.00

# Convert a string into a float to use in calculations
user_input = "23.4"
user_number = float(user_input)
brain.screen.print(user_number * 3)

# Output: 70.20

Mô-đun Toán học#

Mô-đun math trong MicroPython cung cấp thêm các phương thức để thực hiện các phép tính toán học thông thường. Các phương thức này bao gồm các phép toán lượng giác, logarit và các phép toán số học khác.

Mô-đun math được nhập mặc định trong VEXcode.

Constants#

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.

pi#

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

Usage:
math.pi

# Calculate the area of a circle with radius 5 using pi
circle_area = math.pi * 5 * 5
brain.screen.print(circle_area)

# circle_area = 78.54

tau#

tau cho giá trị của 2π.

Usage:
math.tau

# Calculate the circumference of a circle with radius
circumference = math.tau * 5
brain.screen.print(circumference)

# circumference = 31.42

e#

e cho biết cơ số của logarit tự nhiên.

Usage:
math.e

# Calculate e raised to the power of 2
e_power = math.pow(math.e, 2)
brain.screen.print(e_power)

# e_power = 7.39

Trigonometry#

tội lỗi#

Hàm sin tính sin của một góc theo radian và trả về một giá trị float.

Usage:
math.sin(x)

Tham số

Sự miêu tả

x

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

# Calculate the sine of 
# 30 degrees in radians
result = math.sin(math.radians(30))
brain.screen.print(result)

# result = 0.50

cos#

Hàm cos tính cosin của một góc theo radian và trả về một giá trị float.

Usage:
math.cos(x)

Tham số

Sự miêu tả

x

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

# Calculate the cosine of 
# 60 degrees in radians
result = math.cos(math.radians(60))
brain.screen.print(result)

# result = 0.50

rám nắng#

Hàm tan tính tang của một góc theo radian và trả về một giá trị float.

Usage:
math.tan(x)

Tham số

Sự miêu tả

x

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

# Calculate the tangent of 
# 45 degrees in radians
result = math.tan(math.radians(45))
brain.screen.print(result)

# result = 1.00

atan#

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

Usage:
math.atan(x)

Tham số

Sự miêu tả

x

Số thực hoặc số nguyên.

# Calculate the arc tangent 
# of 1 in degrees
arc_tan = math.atan(1.0)
result = math.degrees(arc_tan)
brain.screen.print(result)

# result = 45.00

atan2#

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

Usage:
math.atan2(y, x)

Tham số

Sự miêu tả

y

Một số thực hoặc số nguyên biểu thị tọa độ y.

x

Một số thực hoặc số nguyên biểu thị tọa độ x.

# Calculate the inverse tangent 
# of 1/1 in degrees
atan2 = math.atan2(1.0, 1.0)
result = math.degrees(atan2)
brain.screen.print(result)

# result = 45.00

asin#

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

Usage:
math.asin(x)

Tham số

Sự miêu tả

x

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

# Calculate the arc sine 
# of 0.5 in degrees
result = math.degrees(math.asin(0.5))
brain.screen.print(result)

# result = 30.00

acos#

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

Usage:
math.acos(x)

Tham số

Sự miêu tả

x

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

# Calculate the arc cosine 
# of 0.5 in degrees
result = math.degrees(math.acos(0.5))
brain.screen.print(result)

# result = 60.00

bằng cấp#

degrees chuyển đổi góc từ radian sang độ.

Usage:
math.degrees(x)

Tham số

Sự miêu tả

x

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

# Convert pi radians to degrees
degrees_result = math.degrees(math.pi)
brain.screen.print(degrees_result)

# degrees_result = 180.00

radian#

radians chuyển đổi góc từ độ sang radian.

Usage:
math.radians(x)

Tham số

Sự miêu tả

x

Một số thực hoặc số nguyên biểu thị góc tính bằng độ.

# Convert 180 degrees to radians
radians_result = math.radians(180)
brain.screen.print(radians_result)

# radians_result = 3.14

Rounding & Absolute Values#

trần nhà#

ceil làm tròn số lên đến số nguyên gần nhất.

Usage:
math.ceil(x)

Tham số

Sự miêu tả

x

Một số thực hoặc số nguyên cần được làm tròn lên.

# Round 3.7 up to the nearest integer
ceil_result = math.ceil(3.7)
brain.screen.print(ceil_result)

# ceil_result = 4

sàn nhà#

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

Usage:
math.floor(x)

Tham số

Sự miêu tả

x

Một số thực hoặc số nguyên cần được làm tròn xuống.

# Round 3.7 down to the nearest integer
floor_result = math.floor(3.7)
brain.screen.print(floor_result)

# floor_result = 3

trunc#

trunc loại bỏ phần thập phân của một số mà không làm tròn.

Usage:
math.trunc(x)

Tham số

Sự miêu tả

x

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

# Remove the decimal part of 3.7
trunc_result = math.trunc(3.7)
brain.screen.print(trunc_result)

# trunc_result = 3

vải#

fabs trả về giá trị tuyệt đối của một số dưới dạng số thực.

Usage:
math.fabs(x)

Tham số

Sự miêu tả

x

Số thực hoặc số nguyên.

# Get the absolute value of -3.7
fabs_result = math.fabs(-3.7)
brain.screen.print(fabs_result)

# fabs_result = 3.70

Exponents & Logarithms#

pow#

Hàm pow nâng x lên lũy thừa y và trả về một số thực, ngay cả khi cả hai đầu vào đều là số nguyên.

Usage:
math.pow(x, y)

Tham số

Sự miêu tả

x

Cơ số thực hoặc số nguyên.

y

Số mũ là số thực hoặc số nguyên.

# Calculate 2 raised to the power of 3
power_result = math.pow(2, 3)
brain.screen.print(power_result)

# power_result = 8.00

căn bậc hai#

Hàm sqrt tính căn bậc hai của một số và trả về một số thực, kể cả với các số chính phương.

Usage:
math.sqrt(x)

Tham số

Sự miêu tả

x

Một số thực hoặc số nguyên không âm.

# Calculate the square root of 16
sqrt_result = math.sqrt(16)
brain.screen.print(sqrt_result)

# sqrt_result = 4.00

kinh nghiệm#

Hàm exp tính lũy thừa của một số và trả về một số thực.

Usage:
math.exp(x)

Tham số

Sự miêu tả

x

Số thực hoặc số nguyên.

# Calculate e raised to the power of 1
exp_result = math.exp(1)
brain.screen.print(exp_result)

# exp_result = 2.72

nhật ký#

Hàm log tính logarit tự nhiên của một số và trả về một số thực.

Usage:
math.log(x)

Tham số

Sự miêu tả

x

Một số thực hoặc số nguyên dương.

# Calculate the natural logarithm
# (base e) of 7.389056
log_result = math.log(7.389056)
brain.screen.print(log_result)

# log_result = 2.00

Floating Point Operations#

modf#

modf phân tích một số thành phần thập phân và phần nguyên và trả về một bộ (fractional part, integer part), cả hai đều là số thực.

Usage:
math.modf(x)

Tham số

Sự miêu tả

x

Một số thực hoặc số nguyên cần phân tích.

# Decompose 3.14159 into fractional and integer parts
fractional_part, integer_part = math.modf(3.14159)
brain.screen.print(fractional_part)
brain.screen.next_row()
brain.screen.print(integer_part)

# fractional_part = 0.14
# integer_part = 3.00

frexp#

frexp phân tích một số thành phần định trị và số mũ và trả về một bộ (mantissa, exponent), trong đó định trị là một số thực và số mũ là một số nguyên.

Usage:
math.frexp(x)

Tham số

Sự miêu tả

x

Một số thực hoặc số nguyên cần phân tích.

# Decompose 16 into its mantissa and exponent
mantissa, exponent = math.frexp(16)
brain.screen.print(mantissa)
brain.screen.next_row()
brain.screen.print(exponent)

# mantissa = 0.50
# exponent = 5

fmod#

fmod trả về phần dư của phép chia trong khi vẫn giữ nguyên dấu của số bị chia (x).

Usage:
math.fmod(x, y)

Tham số

Sự miêu tả

x

Cổ tức.

y

Số chia.

# Calculate remainder of 10 / 3
# that preserves the sign of 10
fmod_result = math.fmod(10, 3)
brain.screen.print(fmod_result)

# fmod_result = 1.00

copysign#

copysign trả về x với dấu của y.

Usage:
math.copysign(x, y)

Tham số

Sự miêu tả

x

Giá trị cần điều chỉnh.

y

Giá trị có dấu sẽ được sao chép.

# Return -10 with the sign of 3 (positive)
copysign_result = math.copysign(-10, 3)
brain.screen.print(copysign_result)

# copysign_result = 10.00

ldexp#

ldexp tính x * (2 ** exp), tương đương với x * 2exp{code}.

Usage:
math.ldexp(x, exp)

Tham số

Sự miêu tả

x

Giá trị cơ bản.

exp

Số mũ.

# Compute 3 * (2 ** 4)
ldexp_result = math.ldexp(3, 4)
brain.screen.print(ldexp_result)

# ldexp_result = 48.00