Matematika#

Įvadas#

„Math“ apima ir integruotas „Python“ funkcijas, ir pilną math modulį, kuris automatiškai pasiekiamas „VEXcode GO“. Š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.

  • math.pi – Konstanta π (pi).

  • math.tau – Konstanta tau (2π).

  • math.e – Eulerio skaičius, natūralaus logaritmo pagrindas.

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.pow – Kelia skaičių laipsniu.

  • math.sqrt – Grąžina kvadratinę šaknį.

  • math.exp – Apskaičiuoja e, pakeltą x laipsniu.

  • math.log – Apskaičiuokite x logaritmą.

  • math.log10 – Apskaičiuoja x dešimtainį logaritmą.

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čiuoja x * (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

x

Sveikasis skaičius arba slankioji eilutė.

def main():
    # Get the absolute value of -10
    abs_result = abs(-10)
    console.print(abs_result)

# abs_result = 10

# Start threads — Do not delete
start_thread(main)

round#

round suapvalina skaičių iki nurodyto skaičiaus po kablelio.

Usage:
round(x, ndigits)

Parametras

Aprašymas

x

Sveikasis skaičius arba slankioji eilutė.

ndigits

Pasirinktinai. Apvalinimo iki dešimtainių vietų skaičius. Numatytoji reikšmė yra 0.

def main():
    # Round 5.7 to the nearest integer
    round_int_result = round(5.7)
    console.print(round_int_result)

# round_int_result = 6

# Start threads — Do not delete
start_thread(main)

def main():
    # Round 3.14159 to 2 decimal places
    round_result = round(3.14159, 2)
    console.print(round_result, precision=2)

# round_result = 3.14

# Start threads — Do not delete
start_thread(main)

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

arg1, arg2, …

Skaičiai, kuriuos galima palyginti.

sequence

Sąrašas, rinkinys arba kita seka, kurioje yra skaičiai.

def main():
    # Get the smallest number from 3, 7, and 1
    min_result = min(3, 7, 1)
    console.print(min_result)

# min_result = 1

# Start threads — Do not delete
start_thread(main)

def main():
    # Get the smallest value from a list
    min_list_result = min([10, 4, 25, 1])
    console.print(min_list_result)

# min_list_result = 1

# Start threads — Do not delete
start_thread(main)

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

arg1, arg2, …

Skaičiai, kuriuos galima palyginti.

sequence

Sąrašas, rinkinys arba kita seka, kurioje yra skaičiai.

def main():
    # Get the largest number from 3, 7, and 1
    max_result = max(3, 7, 1)
    console.print(max_result)

# max_result = 7

# Start threads — Do not delete
start_thread(main)

def main():
    # Get the largest value from a list
    max_list_result = max([10, 4, 25, 1])
    console.print(max_list_result)

# max_list_result = 25

# Start threads — Do not delete
start_thread(main)

sum#

sum susumuoja visas iteruojamo elemento reikšmes su pasirenkama pradine reikšme.

Usage:
sum(sequence, start)

Parametras

Aprašymas

sequence

Sąrašas, rinkinys arba kita seka, kurioje yra skaičiai.

start

Pasirinktinai. Reikšmė, kurią reikia pridėti prie sumos. Numatytoji reikšmė yra 0.

def main():
    # Calculate the sum of a list of numbers
    sum_result = sum([1, 2, 3, 4, 5])
    console.print(sum_result)

# sum_result = 15

# Start threads — Do not delete
start_thread(main)

def main():
    # Calculate the sum of a list with a starting value of 10
    sum_with_start = sum([1, 2, 3], 10)
    console.print(sum_with_start)

# sum_with_start = 16

# Start threads — Do not delete
start_thread(main)

divmod#

divmod grąžina rinkinį, kuriame yra dalybos operacijos dalmuo ir liekana.

Usage:
divmod(a, b)

Parametras

Aprašymas

a

Dividendas.

b

Daliklis.

def main():
    # Perform integer division and remainder of 10 / 3
    divmod_result = divmod(10, 3)
    console.print(divmod_result)

# divmod_result = (3, 1)

# Start threads — Do not delete
start_thread(main)

pow#

pow kelia skaičių laipsniu ir pasirinktinai atlieka modulio operaciją.

Usage:
pow(x, y, mod)

Parametras

Aprašymas

x

Bazinis skaičius.

y

Laipsniškas rodiklis.

mod

Pasirinktinai. Modulio reikšmė. Jei nurodyta, grąžina (x ** y) % mod.

def main():
    # Calculate 2 raised to the power of 3
    pow_result = pow(2, 3)
    console.print(pow_result)

# pow_result = 8

# Start threads — Do not delete
start_thread(main)

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

x

Skaičius, eilutė arba kitas objektas, kurį reikia konvertuoti.

base

Pasirinktinai. Skaičių bazė, naudojama konvertavimui. Numatytoji reikšmė yra 10.

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

# Output: 19 coins

# Start threads — Do not delete
start_thread(main)

def main():
    # Convert a string into an integer to use in calculations
    user_input = "55"
    user_number = int(user_input)
    console.print(user_number * 2)

# Output: 110

# Start threads — Do not delete
start_thread(main)

float#

float konvertuoja skaičių arba eilutę į slankiojo kablelio skaičių.

Usage:
float(x)

Parametras

Aprašymas

x

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
robot.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)
robot.screen.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

def main():
    # Calculate the area of a circle with radius 5 using pi
    circle_area = math.pi * 5 * 5
    console.print(circle_area, precision=2)

# circle_area = 78.54

# Start threads — Do not delete
start_thread(main)

tau#

tau atitinka 2π reikšmę.

Usage:
math.tau

def main():
    # Calculate the circumference of a circle with radius
    circumference = math.tau * 5
    console.print(circumference, precision=2)

# circumference = 31.42

# Start threads — Do not delete
start_thread(main)

e#

e yra natūralaus logaritmo pagrindas.

Usage:
math.e

def main():
    # Calculate e raised to the power of 2
    e_power = math.pow(math.e, 2)
    console.print(e_power, precision=2)

# e_power = 7.39

# Start threads — Do not delete
start_thread(main)

Trigonometry#

nuodėmė#

sin apskaičiuoja kampo sinusą radianais ir grąžina slankiąją kablelį.

Usage:
math.sin(x)

Parametras

Aprašymas

x

Plokščiadugnis arba sveikasis skaičius, vaizduojantis kampą radianais.

def main():
    # Calculate the sine of 
    # 30 degrees in radians
    result = math.sin(math.radians(30))
    console.print(result, precision=2)

# result = 0.50

# Start threads — Do not delete
start_thread(main)

nes#

cos apskaičiuoja kampo kosinusą radianais ir grąžina slankiąją kablelį.

Usage:
math.cos(x)

Parametras

Aprašymas

x

Plokščiadugnis arba sveikasis skaičius, vaizduojantis kampą radianais.

def main():
    # Calculate the cosine of 
    # 60 degrees in radians
    result = math.cos(math.radians(60))
    console.print(result, precision=2)

# result = 0.50

# Start threads — Do not delete
start_thread(main)

įdegis#

tan apskaičiuoja kampo tangentą radianais ir grąžina sveikąjį skaičių.

Usage:
math.tan(x)

Parametras

Aprašymas

x

Plokščiadugnis arba sveikasis skaičius, vaizduojantis kampą radianais.

def main():
    # Calculate the tangent of 
    # 45 degrees in radians
    result = math.tan(math.radians(45))
    console.print(result)

# result = 1

# Start threads — Do not delete
start_thread(main)

šiukšlės#

asin apskaičiuoja skaičiaus atvirkštinį sinusą (arkinsusą) ir grąžina sveikąjį skaičių, rodantį kampą radianais.

Usage:
math.asin(x)

Parametras

Aprašymas

x

Slankiojo skaičiaus arba sveikasis skaičius nuo -1 iki 1.

def main():
    # Calculate the arc sine 
    # of 0.5 in degrees
    result = math.degrees(math.asin(0.5))
    console.print(result)

# result = 30

# Start threads — Do not delete
start_thread(main)

akosai#

Funkcija acos apskaičiuoja skaičiaus atvirkštinį kosinusą (arkkosinusą) ir grąžina sveikąjį skaičių, reiškiantį kampą radianais.

Usage:
math.acos(x)

Parametras

Aprašymas

x

Slankiojo skaičiaus arba sveikasis skaičius nuo -1 iki 1.

def main():
    # Calculate the arc cosine 
    # of 0.5 in degrees
    result = math.degrees(math.acos(0.5))
    console.print(result)

# result = 60

# Start threads — Do not delete
start_thread(main)

Atanas#

atan apskaičiuoja skaičiaus atvirkštinę liestinę (arktangentą) ir grąžina sveikąjį skaičių, reiškiantį kampą radianais.

Usage:
math.atan(x)

Parametras

Aprašymas

x

Slankioji arba sveikoji reikšmė.

def main():
    # Calculate the arc tangent 
    # of 1 in degrees
    arc_tan = math.atan(1.0)
    result = math.degrees(arc_tan)
    console.print(result)

# result = 45

# Start threads — Do not delete
start_thread(main)

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

y

Slankiojo skaičiaus arba sveikasis skaičius, vaizduojantis y koordinatę.

x

Slankiojo skaičiaus arba sveikasis skaičius, vaizduojantis x koordinatę.

def main():
    # Calculate the inverse tangent 
    # of 1/1 in degrees
    atan2 = math.atan2(1.0, 1.0)
    result = math.degrees(atan2)
    console.print(result)

# result = 45

# Start threads — Do not delete
start_thread(main)

laipsniai#

degrees konvertuoja kampą iš radianų į laipsnius ir grąžina sveikąjį skaičių.

Usage:
math.degrees(x)

Parametras

Aprašymas

x

Plokščiadugnis arba sveikasis skaičius, vaizduojantis kampą radianais.

def main():
    # Convert pi radians to degrees
    degrees_result = math.degrees(math.pi)
    console.print(degrees_result)

# degrees_result = 180

# Start threads — Do not delete
start_thread(main)

radianai#

radians konvertuoja kampą iš laipsnių į radianus.

Usage:
math.radians(x)

Parametras

Aprašymas

x

Plūdinis skaičius arba sveikasis skaičius, vaizduojantis kampą laipsniais.

def main():
    # Convert 180 degrees to radians
    radians_result = math.radians(180)
    console.print(radians_result, precision=2)

# radians_result = 3.14

# Start threads — Do not delete
start_thread(main)

Rounding & Absolute Values#

lubos#

ceil suapvalina skaičių iki artimiausio sveikojo skaičiaus.

Usage:
math.ceil(x)

Parametras

Aprašymas

x

Slankioji arba sveikoji reikšmė, kuri turi būti apvalinama į didesnę pusę.

def main():
    # Round 3.7 up to the nearest integer
    ceil_result = math.ceil(3.7)
    console.print(ceil_result)

# ceil_result = 4

# Start threads — Do not delete
start_thread(main)

grindys#

floor suapvalina skaičių iki artimiausio sveikojo skaičiaus.

Usage:
math.floor(x)

Parametras

Aprašymas

x

Slankioji arba sveikoji reikšmė, kurią reikia apvalinti į mažesnę pusę.

def main():
    # Round 3.7 down to the nearest integer
    floor_result = math.floor(3.7)
    console.print(floor_result)

# floor_result = 3

# Start threads — Do not delete
start_thread(main)

trumpinys#

trunc pašalina dešimtainę skaičiaus dalį neapvalindama.

Usage:
math.trunc(x)

Parametras

Aprašymas

x

Plūdinis skaičius, kuris bus sutrumpintas.

def main():
    # Remove the decimal part of 3.7
    trunc_result = math.trunc(3.7)
    console.print(trunc_result)

# trunc_result = 3

# Start threads — Do not delete
start_thread(main)

pagaminti produktai#

fabs grąžina absoliučią skaičiaus reikšmę kaip slankiojo kablelio formą.

Usage:
math.fabs(x)

Parametras

Aprašymas

x

Slankioji arba sveikoji reikšmė.

def main():
    # Get the absolute value of -3.7
    fabs_result = math.fabs(-3.7)
    console.print(fabs_result, precision=1)

# fabs_result = 3.7

# Start threads — Do not delete
start_thread(main)

Exponents & Logarithms#

rąstas#

log apskaičiuoja skaičiaus logaritmą ir grąžina slankiąją kablelį.

Usage:
math.log(x, base)

Parametras

Aprašymas

x

Teigiamas slankiojantis skaičius arba sveikasis skaičius.

base

Pasirinktinai. Naudojamas logaritmo pagrindas. Pagal numatytuosius nustatymus tai yra natūralusis logaritmas.

def main():
    # Calculate the natural logarithm
    # (base e) of 7.389056
    log_result = math.log(7.389056)
    console.print(log_result)

# log_result = 2

# Start threads — Do not delete
start_thread(main)

def main():
    # Calculate the log base 2 of 8
    log_result = math.log(8, 2)
    console.print(log_result)

# log_result = 3

# Start threads — Do not delete
start_thread(main)

log10#

log10 apskaičiuoja skaičiaus dešimtainį logaritmą ir grąžina slankiąją kablelį.

Usage:
math.log10(x)

Parametras

Aprašymas

x

Teigiamas slankiojantis skaičius arba sveikasis skaičius.

def main():
    # Calculate the base-10 logarithm of 100
    log10_result = math.log10(100)
    console.print(log10_result)

# log10_result = 2

# Start threads — Do not delete
start_thread(main)

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

x

Slankiojo arba sveikojo skaičiaus bazė.

y

Slankiojo skaičiaus arba sveikojo skaičiaus rodiklis.

def main():
    # Calculate 2 raised to the power of 3
    power_result = math.pow(2, 3)
    console.print(power_result)

    # power_result = 8

# Start threads — Do not delete
start_thread(main)

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

x

Neigiamas slankiojantis skaičius arba sveikasis skaičius.

def main():
    # Calculate 2 raised to the power of 3
    power_result = math.pow(2, 3)
    console.print(power_result)

# power_result = 8

# Start threads — Do not delete
start_thread(main)

patirtis#

exp apskaičiuoja skaičiaus eksponentę ir grąžina slankiąją kablelį.

Usage:
math.exp(x)

Parametras

Aprašymas

x

Slankioji arba sveikoji reikšmė.

def main():
    # Calculate e raised to the power of 1
    exp_result = math.exp(1)
    console.print(exp_result, precision=2)

# exp_result = 2.72

# Start threads — Do not delete
start_thread(main)

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

x

Slankioji arba sveikoji reikšmė, kurią reikia suskaidyti.

def main():
    # Decompose 3.14159 into fractional and integer parts
    fractional_part, integer_part = math.modf(3.14159)
    console.print(fractional_part, precision=2)
    console.new_line()
    console.print(integer_part)

# fractional_part = 0.14
# integer_part = 3

# Start threads — Do not delete
start_thread(main)

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

x

Slankioji arba sveikoji reikšmė, kurią reikia suskaidyti.

def main():
    # Decompose 16 into its mantissa and exponent
    mantissa, exponent = math.frexp(16)
    console.print(mantissa, precision=2)
    console.new_line()
    console.print(exponent)

# mantissa = 0.50
# exponent = 5

# Start threads — Do not delete
start_thread(main)

fmod#

fmod grąžina dalybos liekaną, išlaikant dalinio ženklą (x).

Usage:
math.fmod(x, y)

Parametras

Aprašymas

x

Dividendas.

y

Daliklis.

def main():
    # Calculate remainder of 10 / 3
    # that preserves the sign of 10
    fmod_result = math.fmod(10, 3)
    console.print(fmod_result)

# fmod_result = 1

# Start threads — Do not delete
start_thread(main)

autoriaus teisės#

copysign grąžina x su y ženklu.

Usage:
math.copysign(x, y)

Parametras

Aprašymas

x

Reikšmė, kurią reikia modifikuoti.

y

Reikšmė, kurios ženklas bus nukopijuotas.

def main():
    # Return -10 with the sign of 3 (positive)
    copysign_result = math.copysign(-10, 3)
    console.print(copysign_result)

# copysign_result = 10

# Start threads — Do not delete
start_thread(main)

ldexp#

ldexp apskaičiuoja x * (2 ** exp), kas atitinka x * 2exp.

Usage:
math.ldexp(x, exp)

Parametras

Aprašymas

x

Bazinė vertė.

exp

Laipsniškas rodiklis.

def main():
    # Compute 3 * (2 ** 4)
    ldexp_result = math.ldexp(3, 4)
    console.print(ldexp_result)

# ldexp_result = 48

# Start threads — Do not delete
start_thread(main)