Matematika#
Įvadas#
Standartinė C++ biblioteka teikia pagrindines matematikos funkcijas iki <cmath>, kurias palaiko „VEXcode IQ“. Šios funkcijos leidžia atlikti įprastus matematinius veiksmus, tokius kaip trigonometrija, apvalinimas, laipsniškas kėlimas ir kt.
Naudokite juos padėčiai, kampams, atstumams apskaičiuoti arba laipsnių ir radianų konvertavimui.
Žemiau pateikiamas galimų matematinių funkcijų, konstantų ir įrankių sąrašas:
Bendrosios matematikos funkcijos – Įprasti matematikos įrankiai.
abs– Grąžina absoliučiąją skaičiaus reikšmę.fmin– Grąžina mažiausią iš įvesties reikšmių.fmax– Grąžina didžiausią iš įvesties reikšmių.pow– Kelia skaičių laipsniu.
Konstantos – iš anksto nustatytos vertės nuo <cmath>
Trigonometrija – apskaičiuokite kampus ir ryšius tarp kraštinių.
sin– kampo sinusas radianais.cos– kampo kosinusas radianais.tan– Kampo tangentas radianais.atan– Radianais nurodytos reikšmės arktangentas.atan2– y/x arktangentas radianais, atsižvelgiant į kvadrantą.asin– Radianais nurodytos reikšmės arcsinusas.acos– Radianais nurodytos reikšmės arkkosinusas.
Apvalinimas ir absoliuti vertė – koreguokite tikslumą arba kryptį.
ceil– Apvalina iki artimiausio sveikojo skaičiaus.floor– Apvalinama iki artimiausio sveikojo skaičiaus.trunc– Pašalina dešimtainę dalį.
Laimės rodikliai ir logaritmai – laipsnių kėlimas, šaknies ištraukimas ir logaritmų skaičiavimas.
sqrt– Grąžina kvadratinę šaknį.exp– Apskaičiuoja e, pakeltą x laipsniu.log– Natūralusis logaritmas (bazinis e).log10– Dešimtainis logaritmas.
Slankiojo kablelio operacijos – tikrinkite arba skaidykite slankiojo kablelio reikšmes.
Bendros matematikos funkcijos#
abs#
Grąžina absoliučiąją skaičiaus reikšmę, pašalinant bet kokį neigiamą ženklą.
Available Functions1 — Grąžina absoliučiąją sveikojo skaičiaus reikšmę.
int abs( int x );
Parameters2 — Grąžina absoliučią dvigubos reikšmės vertę.
double abs( double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Sveikasis skaičius arba dvigubas skaičius. |
Grąžina absoliučią įvesties reikšmę kaip to paties tipo.
Examples// Display the absolute value of -10
Brain.Screen.print("%d", abs(-10));
// Output: 10
fmin#
Grąžina mažesniąją iš dviejų reikšmių kaip dvigubą skaičių.
Available Functionsdouble fmin( double value1, double value2 );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Pirmoji palyginama vertė. |
|
|
Antroji vertė, kurią reikia palyginti. |
Grąžina double reiškiantį mažesniąją iš dviejų įvesties reikšmių.
// Display the lower of two values
Brain.Screen.print("%f", fmin(7, 4));
// Output: 4.000000
fmax#
Grąžina didesnę iš dviejų reikšmių kaip dvigubą skaičių.
Available Functionsdouble fmax( double value1, double value2 );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Pirmoji palyginama vertė. |
|
|
Antroji vertė, kurią reikia palyginti. |
Grąžina double reiškiantį didesnę iš dviejų įvesties reikšmių.
// Display the higher of two values
Brain.Screen.print("%f", fmax(7, 4));
// Output: 7.000000
pow#
Grąžina skaičių, pakeltą laipsniu, kaip dvigubą.
Available Functionsdouble pow( double base, double exponent );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Bazinis skaičius. |
|
|
Laipsniškas rodiklis. |
Grąžina double reiškiantį bazinį skaičių, pakeltą laipsnio rodikliu.
// Display 2 to the power of 3
Brain.Screen.print("%f", pow(2, 3));
// Output: 8.000000
Konstantos#
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.
M_PI#
M_PI pateikia matematinę konstantą π – apskritimo apimties ir skersmens santykį.
const double M_PI;
Ši konstanta neturi parametrų.
Return ValuesGrąžina matematinę konstantą π kaip double.
// 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#
Matematinė konstanta e (Eulerio skaičius), natūralaus logaritmo pagrindas.
Available Constantsconst double M_E;
Ši konstanta neturi parametrų.
Return ValuesGrąžina matematinę konstantą e kaip double.
// Calculate e raised to the power of 2
double result = pow(M_E, 2);
Brain.Screen.print("%f", result);
// Output: 7.389056
Trigonometrija#
sin#
Apskaičiuoja kampo sinusą radianais ir grąžina dvigubą skaičių.
Available Functionsdouble sin( double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Dvigubas skaičius, vaizduojantis kampą radianais. |
Grąžina skaičių double žymintį kampo sinusą.
// 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#
Apskaičiuoja kampo kosinusą radianais ir grąžina dvigubą skaičių.
Available Functionsdouble cos( double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Dvigubas skaičius, vaizduojantis kampą radianais. |
Grąžina double , žymintį kampo kosinusą.
// 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#
Apskaičiuoja kampo tangentą radianais ir grąžina dvigubą skaičių.
Available Functionsdouble tan( double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Dvigubas skaičius, vaizduojantis kampą radianais. |
Grąžina double , žymintį kampo liestinę.
// 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#
Apskaičiuoja skaičiaus atvirkštinę liestinę (arkinastinę) ir grąžina dvigubą skaičių, reiškiantį kampą radianais.
Available Functionsdouble atan( double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Dviguba vertė. |
Grąžina double reiškiantį arktangentą radianais.
// 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#
Apskaičiuoja atvirkštinio y/x tangento pagrindinę reikšmę ir grąžina dvigubą skaičių, reiškiantį kampą radianais.
Available Functionsdouble atan2( double y, double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Dvigubas skaičius, vaizduojantis y koordinatę. |
|
|
Dvigubas skaičius, vaizduojantis x koordinatę. |
Grąžina double , vaizduojantį y/x arktangentą radianais.
// 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#
Apskaičiuoja skaičiaus atvirkštinį sinusą (arkinusą) ir grąžina dvigubą skaičių, reiškiantį kampą radianais.
Available Functionsdouble asin( double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Dvigubas skaičius tarp -1 ir 1. |
Grąžina double reiškiantį arkos sinusą radianais.
// 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#
Apskaičiuoja skaičiaus atvirkštinį kosinusą (arkkosinusą) ir grąžina dvigubą skaičių, reiškiantį kampą radianais.
Available Functionsdouble acos( double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Dvigubas skaičius tarp -1 ir 1. |
Grąžina skaičių double reiškiantį arkkosinusą radianais.
// 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
Apvalinimas ir absoliuti vertė#
ceil#
Grąžina skaičių, suapvalintą į didesnę pusę kaip dvigubą.
Available Functionsdouble ceil( double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Dvigubas, kuris turi būti suapvalintas. |
Grąžina double reiškiantį mažiausią sveikąjį skaičių, didesnį arba lygų x.
// Round up 9.7
Brain.Screen.print("%f", ceil(9.7));
// Output: 10.000000
floor#
Grąžina skaičių, suapvalintą į mažesnę pusę kaip dvigubą.
Available Functionsdouble floor( double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Dvigubas skaičius, kurį reikia apvalinti žemyn. |
Grąžina double reiškiantį didžiausią sveikąjį skaičių, mažesnį arba lygų x.
// Round down 9.7
Brain.Screen.print("%f", floor(9.7));
// Output: 9.000000
trunc#
Grąžina skaičių kaip dvigubą, kurio dešimtainė dalis nustatyta į nulį.
Available Functionsdouble trunc( double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Dvigubas skaičius, kurį reikia sutrumpinti. |
Grąžina skaičių double , be dešimtainės dalies.
// Truncate 9.7
Brain.Screen.print("%f", trunc(9.7));
// Output: 9.000000
Laipsniai ir logaritmai#
sqrt#
Grąžina skaičiaus kvadratinę šaknį.
Available Functionsdouble sqrt( double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Neigiamas dvigubas skaičius. |
Grąžina double reiškiantį x kvadratinę šaknį.
// Display the square root of 121
Brain.Screen.print("%f", sqrt(121));
// Output: 11.000000
exp#
Skaičiuoja skaičiaus eksponentinę reikšmę.
Available Functionsdouble exp( double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Dvigubas skaičius, skirtas apskaičiuoti eksponentę. |
Grąžina skaičių double reiškiantį e, pakeltą x laipsniu.
// Calculate e raised to the power of 1
double result = exp(1);
Brain.Screen.print("%f", result);
// Output: 2.718282
log#
Apskaičiuoja skaičiaus natūrinį logaritmą.
Available Functionsdouble log( double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Teigiamas dvigubas rezultatas. |
Grąžina double reiškiantį natūrinį x logaritmą.
// Calculate the natural logarithm (base e) of e
double result = log(M_E);
Brain.Screen.print("%f", result);
// Output: 1.000000
log10#
Apskaičiuoja skaičiaus dešimtainį logaritmą.
Available Functionsdouble log10( double x );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Teigiamas dvigubas rezultatas. |
Grąžina skaičių double reiškiantį dešimtainį x logaritmą.
// Calculate the base-10 logarithm of 1000
double result = log10(1000);
Brain.Screen.print("%f", result);
// Output: 3.000000
Slankiojo kablelio operacijos#
fmod#
Grąžina dalybos liekaną, išlaikant dalinio ženklą.
Available Functionsdouble fmod( double x, double y );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Dividendas. |
|
|
Daliklis. |
Grąžina double , reiškiantį x/y liekaną su x ženklu.
// 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#
Grąžina skaičių, kurio dydis lygus x ir yra y ženklas.
Available Functionsdouble copysign( double x, double y );
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Reikšmė, kurios dydis bus naudojamas. |
|
|
Reikšmė, kurios ženklas bus naudojamas. |
Grąžina skaičių double kurio dydis atitinka x reikšmę ir yra y ženklas.
// Return -10 with the sign of -3 (negative)
double result = copysign(10, -3);
Brain.Screen.print("%f", result);
// Output: -10.000000