Matematik#

Introduktion#

Standardbiblioteket i C++ tillhandahåller grundläggande matematiska funktioner till och med <cmath>, vilket stöds i VEXcode EXP. Dessa funktioner låter dig utföra vanliga matematiska operationer som trigonometri, avrundning, exponentiering med mera.

Använd dem för att beräkna positioner, vinklar, avstånd eller utföra omvandlingar mellan grader och radianer.

Nedan följer en lista över tillgängliga matematiska funktioner, konstanter och verktyg:

Vanliga matematiska funktioner – Vanliga matematiska verktyg.

  • abs – Returnerar absolutvärdet av ett tal.

  • fmin – Returnerar det minsta av indatavärdena.

  • fmax – Returnerar det största av indatavärdena.

  • pow – Upphöjer ett tal till en potens.

Konstanter – Fördefinierade värden från <cmath>.

  • M_PI – Konstanten π (pi).

  • M_E – Eulers tal, basen för den naturliga logaritmen.

Trigonometri – Beräkna vinklar och förhållandet mellan sidor.

  • sin – Sinus för en vinkel i radianer.

  • cos – Cosinus för en vinkel i radianer.

  • tan – Tangenten till en vinkel i radianer.

  • atan – Arcustangent av ett värde i radianer.

  • atan2 – Arcustangenten till y/x i radianer, med hänsyn till kvadranten.

  • asin – Arcussinus av ett värde i radianer.

  • acos – Arcus cosinus av ett värde i radianer.

Avrundning och absolutvärde – Justera precision eller riktning.

  • ceil – Avrundar uppåt till närmaste heltal.

  • floor – Avrundar nedåt till närmaste heltal.

  • trunc – Tar bort decimaldelen.

Exponenter och logaritmer – Potens-, rot- och logaritmberäkningar.

  • sqrt – Returnerar kvadratroten.

  • exp – Beräknar e upphöjt till x.

  • log – Naturlig logaritm (basen e).

  • log10 – Logaritmen med basen 10.

Flyttalsoperationer – Inspektera eller dekompilera flyttalvärden.

  • fmod – Resten med tecken på utdelningen.

  • copysign – Returnerar ett värde med tecknet för ett annat.

Vanliga matematiska funktioner#

abs#

Returnerar absolutvärdet av ett tal och tar bort eventuella negativa tecken.

Available Functions

1 — Returnerar absolutvärdet av ett heltal.

int abs( int x );

2 — Returnerar absolutvärdet av en dubbel.

double abs( double x );

Parameters

Parameter

Typ

Beskrivning

x

int or double

Ett heltal eller en dubbel.

Return Values

Returnerar absolutvärdet av indata som samma typ.

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

// Output: 10

fmin#

Returnerar det lägre av två värden som en dubbel.

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

Parameters

Parameter

Typ

Beskrivning

value1

double

Det första värdet att jämföra.

value2

double

Det andra värdet att jämföra.

Return Values

Returnerar double som representerar det mindre av de två indatavärdena.

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

// Output: 4.000000

fmax#

Returnerar det högsta av två värden som en dubbel.

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

Parameters

Parameter

Typ

Beskrivning

value1

double

Det första värdet att jämföra.

value2

double

Det andra värdet att jämföra.

Return Values

Returnerar double som representerar det större av de två indatavärdena.

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

// Output: 7.000000

pow#

Returnerar ett tal upphöjt till en potens som en dubblett.

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

Parameters

Parameter

Typ

Beskrivning

base

double

Basnumret.

exponent

double

Exponenten.

Return Values

Returnerar double som representerar basen upphöjt till exponenten.

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

// Output: 8.000000

Konstanter#

Konstanter är fördefinierade värden som förblir fasta under ett projekt. De kan användas i beräkningar utan att kräva någon definition eller tilldelning.

M_PI#

M_PI ger den matematiska konstanten π, förhållandet mellan en cirkels omkrets och dess diameter.

Available Constants
const double M_PI;

Parameters

Denna konstant har inga parametrar.

Return Values

Returnerar den matematiska konstanten π som 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#

Den matematiska konstanten e (Eulers tal), basen för den naturliga logaritmen.

Available Constants
const double M_E;

Parameters

Denna konstant har inga parametrar.

Return Values

Returnerar den matematiska konstanten e som ett double.

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

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

// Output: 7.389056

Trigonometri#

sin#

Beräknar sinus för en vinkel i radianer och returnerar en dubbel.

Available Functions
double sin( double x );

Parameters

Parameter

Typ

Beskrivning

x

double

En dubbel som representerar en vinkel i radianer.

Return Values

Returnerar double som representerar sinus för vinkeln.

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#

Beräknar cosinus för en vinkel i radianer och returnerar en dubbel.

Available Functions
double cos( double x );

Parameters

Parameter

Typ

Beskrivning

x

double

En dubbel som representerar en vinkel i radianer.

Return Values

Returnerar double vilket representerar vinkelns cosinus.

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#

Beräknar tangenten till en vinkel i radianer och returnerar en double.

Available Functions
double tan( double x );

Parameters

Parameter

Typ

Beskrivning

x

double

En dubbel som representerar en vinkel i radianer.

Return Values

Returnerar double som representerar tangenten till vinkeln.

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#

Beräknar den inversa tangenten (bågtangenten) för ett tal och returnerar en double som representerar vinkeln i radianer.

Available Functions
double atan( double x );

Parameters

Parameter

Typ

Beskrivning

x

double

Ett dubbelt värde.

Return Values

Returnerar double som representerar arcutangenten i radianer.

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#

Beräknar huvudvärdet för den inversa tangenten till y/x och returnerar en dubbel som representerar vinkeln i radianer.

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

Parameters

Parameter

Typ

Beskrivning

y

double

En dubbel som representerar y-koordinaten.

x

double

En dubbel som representerar x-koordinaten.

Return Values

Returnerar double som representerar arcutangenten till y/x i radianer.

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#

Beräknar invers sinus (arcusinus) för ett tal och returnerar en dubbel som representerar vinkeln i radianer.

Available Functions
double asin( double x );

Parameters

Parameter

Typ

Beskrivning

x

double

En dubbel mellan -1 och 1.

Return Values

Returnerar double som representerar arcus sinus i radianer.

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#

Beräknar invers cosinus (arccosinus) för ett tal och returnerar en double som representerar vinkeln i radianer.

Available Functions
double acos( double x );

Parameters

Parameter

Typ

Beskrivning

x

double

En dubbel mellan -1 och 1.

Return Values

Returnerar double som representerar arcus cosinus i radianer.

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

Avrundning och absolutvärde#

ceil#

Returnerar ett tal avrundat uppåt som en dubbel.

Available Functions
double ceil( double x );

Parameters

Parameter

Typ

Beskrivning

x

double

En dubbel som ska avrundas uppåt.

Return Values

Returnerar double som representerar det minsta heltalet större än eller lika med x.

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

// Output: 10.000000

floor#

Returnerar ett tal avrundat nedåt som en dubbel.

Available Functions
double floor( double x );

Parameters

Parameter

Typ

Beskrivning

x

double

En dubbel som ska avrundas nedåt.

Return Values

Returnerar double som representerar det största heltalet mindre än eller lika med x.

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

// Output: 9.000000

trunc#

Returnerar ett tal som en dubbel, med dess decimaldel inställd på noll.

Available Functions
double trunc( double x );

Parameters

Parameter

Typ

Beskrivning

x

double

En dubbel som ska avkortas.

Return Values

Returnerar double utan decimaldelen.

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

// Output: 9.000000

Exponenter och logaritmer#

sqrt#

Returnerar kvadratroten av ett tal.

Available Functions
double sqrt( double x );

Parameters

Parameter

Typ

Beskrivning

x

double

En icke-negativ dubbel.

Return Values

Returnerar double som representerar kvadratroten ur x.

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

// Output: 11.000000

exp#

Beräknar exponentialvärdet för ett tal.

Available Functions
double exp( double x );

Parameters

Parameter

Typ

Beskrivning

x

double

En dubbel för att beräkna exponentialen för.

Return Values

Returnerar double och representerar e upphöjt till x.

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

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

log#

Beräknar den naturliga logaritmen för ett tal.

Available Functions
double log( double x );

Parameters

Parameter

Typ

Beskrivning

x

double

En positiv dubbel.

Return Values

Returnerar double som representerar den naturliga logaritmen av x.

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

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

log10#

Beräknar logaritmen med basen 10 för ett tal.

Available Functions
double log10( double x );

Parameters

Parameter

Typ

Beskrivning

x

double

En positiv dubbel.

Return Values

Returnerar double som representerar logaritmen av x med basen 10.

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

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

Flyttalsoperationer#

fmod#

Returnerar resten av divisionen samtidigt som dividendens tecken bibehålls.

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

Parameters

Parameter

Typ

Beskrivning

x

double

Utdelningen.

y

double

Divisorn.

Return Values

Returnerar double vilket representerar resten av x/y med tecknet 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#

Returnerar ett tal med magnituden x och tecknet y.

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

Parameters

Parameter

Typ

Beskrivning

x

double

Det värde vars magnitud kommer att användas.

y

double

Det värde vars tecken kommer att användas.

Return Values

Returnerar ett double med magnituden x och tecknet y.

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

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