Matematika#
Įvadas#
„Math“ apima ir integruotas „Python“ funkcijas, ir pilną math modulį, kuris automatiškai pasiekiamas „VEXcode“. Šie įrankiai leidžia atlikti viską – nuo pagrindinių aritmetikos veiksmų iki sudėtingesnių trigonometrijos, apvalinimo ir logaritminių operacijų.
Naudokite šias funkcijas ir konstantas roboto padėčiai, kampams, atstumams ir kitoms skaitinėms reikšmėms apskaičiuoti. Taip pat galite konvertuoti tarp laipsnių ir radianų, įvertinti išraiškas ir dirbti su specialiomis reikšmėmis, tokiomis kaip begalybė ir NaN.
Žemiau pateikiamas galimų matematinių funkcijų, konstantų ir įrankių sąrašas:
Integruotos funkcijos – įprasti matematikos įrankiai, įtraukti į „Python“.
abs– Grąžina absoliučiąją skaičiaus reikšmę.round– Suapvalina skaičių iki nurodyto skaičiaus po kablelio.min– Grąžina mažiausią iš įvesties reikšmių.max– Grąžina didžiausią iš įvesties reikšmių.sum– Susumuoja visas iteruojamo elemento reikšmes.divmod– Grąžina dalmenį ir liekaną kaip rinkinį.pow– Kelia skaičių laipsniu, pasirinktinai su moduliu.int– Konvertuoja reikšmę į sveikąjį skaičių.float– Konvertuoja reikšmę į slankiojo kablelio skaičių.
Konstantos – iš anksto apibrėžtos reikšmės iš math modulio.
Trigonometrija – apskaičiuokite kampus ir ryšius tarp kraštinių.
math.sin– Kampo sinusas radianais.math.cos– Kampo kosinusas radianais.math.tan– Kampo tangentas radianais.math.atan– Radianais išreikštos reikšmės arktangentas.math.atan2– y/x arktangentas radianais, atsižvelgiant į kvadrantą.math.asin– Radianais išreikštos reikšmės arcsinusas.math.acos– Radianais nurodytos reikšmės arkkosinusas.math.degrees– Konvertuoja radianus į laipsnius.math.radians– Konvertuoja laipsnius į radianus.
Apvalinimas ir absoliuti vertė – koreguokite tikslumą arba kryptį.
math.ceil– Apvalina iki artimiausio sveikojo skaičiaus.math.floor– Apvalina iki artimiausio sveikojo skaičiaus.math.trunc– Pašalina dešimtainę dalį.math.fabs– Grąžina absoliučią reikšmę kaip slankiojo skaičiaus vienetą.
Laimės rodikliai ir logaritmai – laipsnių kėlimas, šaknies ištraukimas ir logaritmų skaičiavimas.
math.log– Apskaičiuokite x natūrinį logaritmą.math.log10– Apskaičiuokite x logaritmą (10 bazę).math.pow– Kelia skaičių laipsniu.math.sqrt– Grąžina kvadratinę šaknį.math.exp– Apskaičiuoja e, pakeltą x laipsniu.
Slankiojo kablelio operacijos – tikrinkite arba skaidykite slankiojo kablelio reikšmes.
math.modf– Grąžina slankiojo skaičiaus trupmeninę ir sveikąją dalis.math.frexp– Suskaido skaičių į mantisą ir laipsnio rodiklį.math.fmod– Liekamoji dalis su dalinio ženklu.math.copysign– Grąžina reikšmę su kito ženklo simboliu.math.ldexp– Apskaičiuojax * (2 ** exp).
Integruotos funkcijos#
„Python“ siūlo keletą integruotų funkcijų, kurios leidžia atlikti matematinius veiksmus projekto viduje.
abs#
abs grąžina absoliučiąją skaičiaus reikšmę, pašalinant bet kokį neigiamą ženklą.
Usage:
abs(x)
Parametras |
Aprašymas |
|---|---|
|
Sveikasis skaičius arba slankioji eilutė. |
# Get the absolute value of -10
abs_result = abs(-10)
brain.print(abs_result)
# abs_result = 10
round#
round suapvalina skaičių iki nurodyto skaičiaus po kablelio.
Usage:
round(x, ndigits)
Parametras |
Aprašymas |
|---|---|
|
Sveikasis skaičius arba slankioji eilutė. |
|
Pasirinktinai. Apvalinimo iki dešimtainių vietų skaičius. Numatytoji reikšmė yra 0. |
# Round 5.7 to the nearest integer
round_int_result = round(5.7)
brain.print(round_int_result)
# round_int_result = 6
# Round 3.14159 to 2 decimal places
round_result = round(3.14159, 2)
brain.print(round_result, precision=2)
# round_result = 3.14
min#
min grąžina mažiausią reikšmę iš kelių argumentų arba iteruojamo skaičiaus.
Usage:
min(arg1, arg2, …) or min(sequence)
Parametras |
Aprašymas |
|---|---|
|
Skaičiai, kuriuos galima palyginti. |
|
Sąrašas, rinkinys arba kita seka, kurioje yra skaičiai. |
# Get the smallest number from 3, 7, and 1
min_result = min(3, 7, 1)
brain.print(min_result)
# min_result = 1
# Get the smallest value from a list
min_list_result = min([10, 4, 25, 1])
brain.print(min_list_result)
# min_list_result = 1
max#
max grąžina didžiausią reikšmę iš kelių argumentų arba iteruojamo skaičiaus.
Usage:
max(arg1, arg2, …) or max(sequence)
Parametras |
Aprašymas |
|---|---|
|
Skaičiai, kuriuos galima palyginti. |
|
Sąrašas, rinkinys arba kita seka, kurioje yra skaičiai. |
# Get the largest number from 3, 7, and 1
max_result = max(3, 7, 1)
brain.print(max_result)
# max_result = 7
# Get the largest value from a list
max_list_result = max([10, 4, 25, 1])
brain.print(max_list_result)
# max_list_result = 25
sum#
sum susumuoja visas iteruojamo elemento reikšmes su pasirenkama pradine reikšme.
Usage:
sum(sequence, start)
Parametras |
Aprašymas |
|---|---|
|
Sąrašas, rinkinys arba kita seka, kurioje yra skaičiai. |
|
Pasirinktinai. Reikšmė, kurią reikia pridėti prie sumos. Numatytoji reikšmė yra 0. |
# Calculate the sum of a list of numbers
sum_result = sum([1, 2, 3, 4, 5])
brain.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.print(sum_with_start)
# sum_with_start = 16
divmod#
divmod grąžina rinkinį, kuriame yra dalybos operacijos dalmuo ir liekana.
Usage:
divmod(a, b)
Parametras |
Aprašymas |
|---|---|
|
Dividendas. |
|
Daliklis. |
# Perform integer division and remainder of 10 / 3
divmod_result = divmod(10, 3)
brain.print(divmod_result)
# divmod_result = (3, 1)
pow#
pow kelia skaičių laipsniu ir pasirinktinai atlieka modulio operaciją.
Usage:
pow(x, y, mod)
Parametras |
Aprašymas |
|---|---|
|
Bazinis skaičius. |
|
Laipsniškas rodiklis. |
|
Pasirinktinai. Modulio reikšmė. Jei nurodyta, grąžina |
# Calculate 2 raised to the power of 3
pow_result = pow(2, 3)
brain.print(pow_result)
# pow_result = 8
int#
int konvertuoja skaičių arba eilutę į sveikąjį skaičių. Ji taip pat palaiko bazinį konvertavimą konvertuojant iš eilutės.
Usage:
int(x, base)
Parametras |
Aprašymas |
|---|---|
|
Skaičius, eilutė arba kitas objektas, kurį reikia konvertuoti. |
|
Pasirinktinai. Skaičių bazė, naudojama konvertavimui. Numatytoji reikšmė yra 10. |
# Convert a float to an integer to get rid of decimals
price = 19.99
price_int = int(price)
brain.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.print(user_number * 2)
# Output: 110
float#
float konvertuoja skaičių arba eilutę į slankiojo kablelio skaičių.
Usage:
float(x)
Parametras |
Aprašymas |
|---|---|
|
Skaičius, eilutė arba kitas objektas, kurį reikia konvertuoti. |
# Convert division result to a float
num_apples = 6
num_people = 2
apples_per_person = float(num_apples) / num_people
brain.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.print(user_number * 3)
# Output: 70.20
Matematikos modulis#
„MicroPython“ modulis math suteikia papildomų metodų, skirtų atlikti įprastus matematinius skaičiavimus. Šie metodai apima trigonometrines, logaritmines ir kitas skaitines operacijas.
math modulis pagal numatytuosius nustatymus importuojamas į „VEXcode“.
Constants#
Konstantos yra iš anksto nustatytos vertės, kurios išlieka fiksuotos viso projekto metu. Jas galima naudoti skaičiavimuose nereikalaujant jokio apibrėžimo ar priskyrimo.
pi#
pi nurodo matematinę konstantą π – apskritimo apimties ir skersmens santykį.
Usage:
math.pi
# Calculate the area of a circle with radius 5 using pi
circle_area = math.pi * 5 * 5
brain.print(circle_area, precision=2)
# circle_area = 78.54
e#
e yra natūralaus logaritmo pagrindas.
Usage:
math.e
# Calculate e raised to the power of 2
e_power = math.pow(math.e, 2)
brain.print(e_power, precision=2)
# e_power = 7.39
Trigonometry#
nuodėmė#
sin apskaičiuoja kampo sinusą radianais ir grąžina slankiąją kablelį.
Usage:
math.sin(x)
Parametras |
Aprašymas |
|---|---|
|
Plokščiadugnis arba sveikasis skaičius, vaizduojantis kampą radianais. |
# Calculate the sine of
# 30 degrees in radians
result = math.sin(math.radians(30))
brain.print(result, precision=2)
# result = 0.50
nes#
cos apskaičiuoja kampo kosinusą radianais ir grąžina slankiąją kablelį.
Usage:
math.cos(x)
Parametras |
Aprašymas |
|---|---|
|
Plokščiadugnis arba sveikasis skaičius, vaizduojantis kampą radianais. |
# Calculate the cosine of
# 60 degrees in radians
result = math.cos(math.radians(60))
brain.print(result, precision=2)
# result = 0.50
įdegis#
tan apskaičiuoja kampo tangentą radianais ir grąžina slankiojo skaičiaus kablelį.
Usage:
math.tan(x)
Parametras |
Aprašymas |
|---|---|
|
Plokščiadugnis arba sveikasis skaičius, vaizduojantis kampą radianais. |
# Calculate the tangent of
# 45 degrees in radians
result = math.tan(math.radians(45))
brain.print(result)
# result = 1.00
šiukšlės#
asin apskaičiuoja skaičiaus atvirkštinį sinusą (arkinsusą) ir grąžina slankiojo kablelio reikšmę, rodančią kampą radianais.
Usage:
math.asin(x)
Parametras |
Aprašymas |
|---|---|
|
Slankiojo skaičiaus arba sveikasis skaičius nuo -1 iki 1. |
# Calculate the arc sine
# of 0.5 in degrees
result = math.degrees(math.asin(0.5))
brain.print(result)
# result = 30.00
akosai#
acos apskaičiuoja skaičiaus atvirkštinį kosinusą (arkkosinusą) ir grąžina slankiojo kablelio, reiškiančio kampą radianais, reikšmę.
Usage:
math.acos(x)
Parametras |
Aprašymas |
|---|---|
|
Slankiojo skaičiaus arba sveikasis skaičius nuo -1 iki 1. |
# Calculate the arc cosine
# of 0.5 in degrees
result = math.degrees(math.acos(0.5))
brain.print(result)
# result = 60.00
Atanas#
atan apskaičiuoja skaičiaus atvirkštinę liestinę (arktangentą) ir grąžina slankiojo kablelio reikšmę, rodančią kampą radianais.
Usage:
math.atan(x)
Parametras |
Aprašymas |
|---|---|
|
Slankioji arba sveikoji reikšmė. |
# Calculate the arc tangent
# of 1 in degrees
arc_tan = math.atan(1.0)
result = math.degrees(arc_tan)
brain.print(result)
# result = 45.00
atan2#
atan2 apskaičiuoja atvirkštinės y/x tangento pagrindinę reikšmę ir grąžina slankiojo kablelio reikšmę, vaizduojančią kampą radianais.
Usage:
math.atan2(y, x)
Parametras |
Aprašymas |
|---|---|
|
Slankiojo skaičiaus arba sveikasis skaičius, vaizduojantis y koordinatę. |
|
Slankiojo skaičiaus arba sveikasis skaičius, vaizduojantis x koordinatę. |
# Calculate the inverse tangent
# of 1/1 in degrees
atan2 = math.atan2(1.0, 1.0)
result = math.degrees(atan2)
brain.print(result)
# result = 45.00
laipsniai#
degrees konvertuoja kampą iš radianų į laipsnius ir grąžina slankiąją kablelį.
Usage:
math.degrees(x)
Parametras |
Aprašymas |
|---|---|
|
Plokščiadugnis arba sveikasis skaičius, vaizduojantis kampą radianais. |
# Convert pi radians to degrees
degrees_result = math.degrees(math.pi)
brain.print(degrees_result)
# degrees_result = 180.00
radianai#
radians konvertuoja kampą iš laipsnių į radianus kaip slankiojo kabučio vienetą.
Usage:
math.radians(x)
Parametras |
Aprašymas |
|---|---|
|
Plūdinis skaičius arba sveikasis skaičius, vaizduojantis kampą laipsniais. |
# Convert 180 degrees to radians
radians_result = math.radians(180)
brain.print(radians_result, precision=2)
# radians_result = 3.14
Rounding & Absolute Values#
lubos#
ceil suapvalina skaičių iki artimiausio sveikojo skaičiaus.
Usage:
math.ceil(x)
Parametras |
Aprašymas |
|---|---|
|
Slankioji arba sveikoji reikšmė, kuri turi būti apvalinama į didesnę pusę. |
# Round 3.7 up to the nearest integer
ceil_result = math.ceil(3.7)
brain.print(ceil_result)
# ceil_result = 4
grindys#
floor suapvalina skaičių iki artimiausio sveikojo skaičiaus.
Usage:
math.floor(x)
Parametras |
Aprašymas |
|---|---|
|
Slankioji arba sveikoji reikšmė, kurią reikia apvalinti į mažesnę pusę. |
# Round 3.7 down to the nearest integer
floor_result = math.floor(3.7)
brain.print(floor_result)
# floor_result = 3
trumpinys#
trunc pašalina dešimtainę skaičiaus dalį neapvalindama.
Usage:
math.trunc(x)
Parametras |
Aprašymas |
|---|---|
|
Plūdinis skaičius, kuris bus sutrumpintas. |
# Remove the decimal part of 3.7
trunc_result = math.trunc(3.7)
brain.print(trunc_result)
# trunc_result = 3
pagaminti produktai#
fabs grąžina absoliučią skaičiaus reikšmę kaip slankiojo kablelio formą.
Usage:
math.fabs(x)
Parametras |
Aprašymas |
|---|---|
|
Slankioji arba sveikoji reikšmė. |
# Get the absolute value of -3.7
fabs_result = math.fabs(-3.7)
brain.print(fabs_result, precision=1)
# fabs_result = 3.7
Exponents & Logarithms#
rąstas#
log apskaičiuoja skaičiaus logaritmą ir grąžina slankiąją kablelį.
Usage:
math.log(x, base)
Parametras |
Aprašymas |
|---|---|
|
Teigiamas slankiojantis skaičius arba sveikasis skaičius. |
|
Pasirinktinai. Naudojamas logaritmo pagrindas. Pagal numatytuosius nustatymus tai yra natūralusis logaritmas. |
# Calculate the natural logarithm
# (base e) of 7.389056
log_result = math.log(7.389056)
brain.print(log_result)
# log_result = 2.00
# Calculate the log base 2 of 8
log_result = math.log(8, 2)
brain.print(log_result)
# log_result = 3.00
log10#
log10 apskaičiuoja skaičiaus dešimtainį logaritmą ir grąžina slankiąją kablelį.
Usage:
math.log10(x)
Parametras |
Aprašymas |
|---|---|
|
Teigiamas slankiojantis skaičius arba sveikasis skaičius. |
# Calculate the log base 10 of 100
log_result = math.log10(100)
brain.print(log_result)
# log_result = 2.00
pow#
pow kelia x y laipsniu ir grąžina slankiąją kablelį, net jei abu įėjimai yra sveikieji skaičiai.
Usage:
math.pow(x, y)
Parametras |
Aprašymas |
|---|---|
|
Slankiojo arba sveikojo skaičiaus bazė. |
|
Slankiojo skaičiaus arba sveikojo skaičiaus rodiklis. |
# Calculate 2 raised to the power of 3
power_result = math.pow(2, 3)
brain.print(power_result)
# power_result = 8.00
kv. m.#
Funkcija sqrt apskaičiuoja skaičiaus kvadratinę šaknį ir grąžina slankiojo kablelio reikšmę net ir idealiųjų kvadratų atveju.
Usage:
math.sqrt(x)
Parametras |
Aprašymas |
|---|---|
|
Neigiamas slankiojantis skaičius arba sveikasis skaičius. |
# Calculate the square root of 16
square_root = math.sqrt(16)
brain.print(square_root)
# square_root = 4.00
patirtis#
exp apskaičiuoja skaičiaus eksponentę ir grąžina slankiąją kablelį.
Usage:
math.exp(x)
Parametras |
Aprašymas |
|---|---|
|
Slankioji arba sveikoji reikšmė. |
# Calculate e raised to the power of 1
exp_result = math.exp(1)
brain.print(exp_result, precision=2)
# exp_result = 2.72
Floating Point Operations#
modifikavimas#
modf suskaido skaičių į trupmeninę ir sveikąją dalis ir grąžina rinkinį (fractional part, integer part), abu kaip slankiuosius skaičius.
Usage:
math.modf(x)
Parametras |
Aprašymas |
|---|---|
|
Slankioji arba sveikoji reikšmė, kurią reikia suskaidyti. |
# Decompose 3.14159 into fractional and integer parts
fractional_part, integer_part = math.modf(3.14159)
brain.print(fractional_part, precision=2)
brain.print(integer_part)
# fractional_part = 0.14
# integer_part = 3
frexp#
frexp suskaido skaičių į jo mantisą ir laipsnio rodiklį ir grąžina rinkinį (mantissa, exponent), kur mantisa yra slankioji reikšmė, o laipsnio rodiklis yra sveikasis skaičius.
Usage:
math.frexp(x)
Parametras |
Aprašymas |
|---|---|
|
Slankioji arba sveikoji reikšmė, kurią reikia suskaidyti. |
# Decompose 16 into its mantissa and exponent
mantissa, exponent = math.frexp(16)
brain.print(mantissa, precision=2)
brain.print(exponent)
# mantissa = 0.50
# exponent = 5
fmod#
fmod grąžina dalybos liekaną, išlaikant dalinio ženklą (x).
Usage:
math.fmod(x, y)
Parametras |
Aprašymas |
|---|---|
|
Dividendas. |
|
Daliklis. |
# Calculate remainder of 10 / 3
# that preserves the sign of 10
fmod_result = math.fmod(10, 3)
brain.print(fmod_result)
# fmod_result = 1
autoriaus teisės#
copysign grąžina x su y ženklu.
Usage:
math.copysign(x, y)
Parametras |
Aprašymas |
|---|---|
|
Reikšmė, kurią reikia modifikuoti. |
|
Reikšmė, kurios ženklas bus nukopijuotas. |
# Return -10 with the sign of 3 (positive)
copysign_result = math.copysign(-10, 3)
brain.print(copysign_result)
# copysign_result = 10
ldexp#
ldexp apskaičiuoja x * (2 ** exp), kas atitinka x * 2exp.
Usage:
math.ldexp(x, exp)
Parametras |
Aprašymas |
|---|---|
|
Bazinė vertė. |
|
Laipsniškas rodiklis. |
# Compute 3 * (2 ** 4)
ldexp_result = math.ldexp(3, 4)
brain.print(ldexp_result)
# ldexp_result = 48