Matematika#

Zavedení#

The C++ standard library provides basic math functionality through <cmath>, which is supported in VEXcode IQ. These functions let you perform common mathematical operations such as trigonometry, rounding, exponentiation, and more.

Používejte je pro výpočet poloh, úhlů, vzdáleností nebo pro provádění převodů mezi stupni a radiány.

Níže je uveden seznam dostupných matematických funkcí, konstant a utilit:

Běžné matematické funkce – Běžné matematické nástroje.

  • abs – Vrátí absolutní hodnotu čísla.

  • fmin – Vrací nejmenší ze vstupních hodnot.

  • fmax – Vrací největší ze vstupních hodnot.

  • pow – Umocní číslo.

Konstanty – Předdefinované hodnoty od <cmath>.

  • M_PI – Konstanta π (pí).

  • M_E – Eulerovo číslo, základ přirozeného logaritmu.

Trigonometrie – Výpočet úhlů a vztahů mezi stranami.

  • sin – Sinus úhlu v radiánech.

  • cos – Kosinus úhlu v radiánech.

  • tan – Tangens úhlu v radiánech.

  • atan – Arkustangens hodnoty v radiánech.

  • atan2 – Arkustangens osy y/x v radiánech, s ohledem na kvadrant.

  • asin – Arkus sinus hodnoty v radiánech.

  • acos – Arkuskosinus hodnoty v radiánech.

Zaokrouhlování a absolutní hodnota – Úprava přesnosti nebo směru.

  • ceil – Zaokrouhlí nahoru na nejbližší celé číslo.

  • floor – Zaokrouhlí dolů na nejbližší celé číslo.

  • trunc – Odstraní desetinnou část.

Exponenty a logaritmy – Výpočty mocnin, odmocnin a logaritmů.

  • sqrt – Vrátí druhou odmocninu.

  • exp – Vypočítá e umocněné na x.

  • log – Přirozený logaritmus (o základu e).

  • log10 – Desetinový logaritmus.

Operace s plovoucí desetinnou čárkou – Kontrola nebo rozklad hodnot s plovoucí desetinnou čárkou.

  • fmod – Zbytek se znaménkem dělence.

  • copysign – Vrátí hodnotu se znaménkem jiné hodnoty.

Běžné matematické funkce#

abs#

Vrátí absolutní hodnotu čísla bez záporného znaménka.

Available Functions

1 — Vrátí absolutní hodnotu celého čísla.

int abs( int x );

2 — Vrátí absolutní hodnotu typu double.

double abs( double x );

Parameters

Parametr

Typ

Popis

x

int or double

Celé číslo nebo číslo double.

Return Values

Vrátí absolutní hodnotu vstupu stejného typu.

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

// Output: 10

fmin#

Vrátí nižší ze dvou hodnot jako typ typu double.

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

Parameters

Parametr

Typ

Popis

value1

double

První hodnota k porovnání.

value2

double

Druhá hodnota k porovnání.

Return Values

Vrací hodnotu double která představuje menší ze dvou vstupních hodnot.

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

// Output: 4.000000

fmax#

Vrátí vyšší ze dvou hodnot jako typ typu double.

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

Parameters

Parametr

Typ

Popis

value1

double

První hodnota k porovnání.

value2

double

Druhá hodnota k porovnání.

Return Values

Vrací hodnotu double která představuje větší ze dvou vstupních hodnot.

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

// Output: 7.000000

pow#

Vrátí číslo umocněné na danou hodnotu jako double.

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

Parameters

Parametr

Typ

Popis

base

double

Základní číslo.

exponent

double

Exponent.

Return Values

Vrací hodnotu double představující základ umocněný na exponent.

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

// Output: 8.000000

Konstanty#

Konstanty jsou předdefinované hodnoty, které zůstávají během projektu neměnné. Lze je použít ve výpočtech bez nutnosti jakékoli definice nebo přiřazení.

M_PI#

M_PI udává matematickou konstantu π, poměr obvodu kruhu k jeho průměru.

Available Constants
const double M_PI;

Parameters

Tato konstanta nemá parametry.

Return Values

Vrátí matematickou konstantu π jako 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#

Matematická konstanta e (Eulerovo číslo), základ přirozeného logaritmu.

Available Constants
const double M_E;

Parameters

Tato konstanta nemá parametry.

Return Values

Vrátí matematickou konstantu e jako double.

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

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

// Output: 7.389056

Trigonometrie#

sin#

Vypočítá sinus úhlu v radiánech a vrátí hodnotu typu double.

Available Functions
double sin( double x );

Parameters

Parametr

Typ

Popis

x

double

Dvojitá hodnota představující úhel v radiánech.

Return Values

Vrací hodnotu double představující sinus úhlu.

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#

Vypočítá kosinus úhlu v radiánech a vrátí hodnotu typu double.

Available Functions
double cos( double x );

Parameters

Parametr

Typ

Popis

x

double

Dvojitá hodnota představující úhel v radiánech.

Return Values

Vrací hodnotu double představující kosinus úhlu.

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#

Vypočítá tangens úhlu v radiánech a vrátí hodnotu typu double.

Available Functions
double tan( double x );

Parameters

Parametr

Typ

Popis

x

double

Dvojitá hodnota představující úhel v radiánech.

Return Values

Vrátí hodnotu double představující tangens úhlu.

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#

Vypočítá inverzní tangens (arkustangens) čísla a vrátí hodnotu typu double představující úhel v radiánech.

Available Functions
double atan( double x );

Parameters

Parametr

Typ

Popis

x

double

Dvojitá hodnota.

Return Values

Vrací hodnotu double představující arkustangens v radiánech.

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#

Vypočítá hlavní hodnotu inverzního tangensu osy y/x a vrátí hodnotu typu double představující úhel v radiánech.

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

Parameters

Parametr

Typ

Popis

y

double

Dvojitá hodnota představující souřadnici y.

x

double

Typ double představující souřadnici x.

Return Values

Vrací hodnotu double představující arkus tangens osy y/x v radiánech.

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#

Vypočítá inverzní sinus (arkus sinus) čísla a vrátí hodnotu typu double představující úhel v radiánech.

Available Functions
double asin( double x );

Parameters

Parametr

Typ

Popis

x

double

Dvojitý počet mezi -1 a 1.

Return Values

Vrací hodnotu double představující arkus sinus v radiánech.

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#

Vypočítá inverzní kosinus (arkuskosinus) čísla a vrátí hodnotu typu double představující úhel v radiánech.

Available Functions
double acos( double x );

Parameters

Parametr

Typ

Popis

x

double

Dvojitý počet mezi -1 a 1.

Return Values

Vrací hodnotu double představující arkuskosinus v radiánech.

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

Zaokrouhlování a absolutní hodnota#

ceil#

Vrátí číslo zaokrouhlené nahoru na dvojnásobek.

Available Functions
double ceil( double x );

Parameters

Parametr

Typ

Popis

x

double

Dvojnásobek k zaokrouhlení nahoru.

Return Values

Vrací hodnotu double představující nejmenší celé číslo větší nebo rovno x.

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

// Output: 10.000000

floor#

Vrátí číslo zaokrouhlené dolů na dvojnásobek.

Available Functions
double floor( double x );

Parameters

Parametr

Typ

Popis

x

double

Dvojnásobek, který se zaokrouhluje dolů.

Return Values

Vrací hodnotu double představující největší celé číslo menší nebo rovno x.

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

// Output: 9.000000

trunc#

Vrátí číslo ve formátu double s desetinnou částí nastavenou na nulu.

Available Functions
double trunc( double x );

Parameters

Parametr

Typ

Popis

x

double

Dvojitý objekt, který má být zkrácen.

Return Values

Vrátí hodnotu double bez desetinné části.

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

// Output: 9.000000

Exponenty a logaritmy#

sqrt#

Vrátí druhou odmocninu čísla.

Available Functions
double sqrt( double x );

Parameters

Parametr

Typ

Popis

x

double

Nezáporný dvojnásobek.

Return Values

Vrací hodnotu double představující druhou odmocninu z x.

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

// Output: 11.000000

exp#

Vypočítá exponenciál čísla.

Available Functions
double exp( double x );

Parameters

Parametr

Typ

Popis

x

double

Dvojitá hodnota pro výpočet exponenciály.

Return Values

Vrací hodnotu double představující e umocněné na x.

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

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

log#

Vypočítá přirozený logaritmus čísla.

Available Functions
double log( double x );

Parameters

Parametr

Typ

Popis

x

double

Pozitivní dvojka.

Return Values

Vrátí hodnotu double představující přirozený logaritmus x.

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

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

log10#

Vypočítá logaritmus čísla se základem 10.

Available Functions
double log10( double x );

Parameters

Parametr

Typ

Popis

x

double

Pozitivní dvojka.

Return Values

Vrátí hodnotu double představující desátkový logaritmus x.

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

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

Operace s plovoucí desetinnou čárkou#

fmod#

Vrátí zbytek po dělení se zachováním znaménka dělence.

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

Parameters

Parametr

Typ

Popis

x

double

Dividenda.

y

double

Dělitel.

Return Values

Vrací hodnotu double představující zbytek x/y se znaménkem 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#

Vrátí číslo o velikosti x a znaménku y.

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

Parameters

Parametr

Typ

Popis

x

double

Hodnota, jejíž velikost bude použita.

y

double

Hodnota, jejíž znaménko bude použito.

Return Values

Vrací hodnotu double s velikostí x a znaménkem y.

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

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