Mathe#

Einführung#

Die C+±Standardbibliothek stellt grundlegende mathematische Funktionen über <cmath>bereit, die in VEXcode V5 unterstützt werden. Mit diesen Funktionen können Sie gängige mathematische Operationen wie Trigonometrie, Runden, Potenzieren und mehr durchführen.

Man kann sie zur Berechnung von Positionen, Winkeln und Entfernungen oder zur Umrechnung zwischen Grad und Bogenmaß verwenden.

Nachfolgend finden Sie eine Liste der verfügbaren mathematischen Funktionen, Konstanten und Hilfsprogramme:

Häufige mathematische Funktionen – Häufig verwendete mathematische Werkzeuge.

  • abs – Gibt den Absolutwert einer Zahl zurück.

  • fmin – Gibt den kleinsten der Eingabewerte zurück.

  • fmax – Gibt den größten der Eingabewerte zurück.

  • pow – Erhöht eine Zahl zu einer Potenz.

Konstanten – Vordefinierte Werte von <cmath>.

  • M_PI – Die Konstante π (pi).

  • M_E – Eulersche Zahl, Basis des natürlichen Logarithmus.

Trigonometrie – Winkel und Beziehungen zwischen Seiten berechnen.

  • sin – Sinus eines Winkels im Bogenmaß.

  • cos – Kosinus eines Winkels im Bogenmaß.

  • tan – Tangens eines Winkels im Bogenmaß.

  • atan – Arkustangens eines Wertes im Bogenmaß.

  • atan2 – Arkustangens von y/x im Bogenmaß, unter Berücksichtigung des Quadranten.

  • asin – Arcussinus eines Wertes im Bogenmaß.

  • acos – Arkuskosinus eines Wertes im Bogenmaß.

Rundung & Absolutwert – Genauigkeit oder Richtung anpassen.

  • ceil – Rundet auf die nächste ganze Zahl auf.

  • floor – Rundet auf die nächste ganze Zahl ab.

  • trunc – Entfernt den Dezimalteil.

Exponenten & Logarithmen – Potenz-, Wurzel- und Logarithmusberechnungen.

  • sqrt – Gibt die Quadratwurzel zurück.

  • exp – Berechnet e hoch x.

  • log – Natürlicher Logarithmus (zur Basis e).

  • log10 – Logarithmus zur Basis 10.

Gleitkommaoperationen – Gleitkommawerte prüfen oder zerlegen.

  • fmod – Rest mit Vorzeichen des Dividenden.

  • copysign – Gibt einen Wert mit dem Vorzeichen eines anderen zurück.

Gängige mathematische Funktionen#

abs#

Gibt den Absolutwert einer Zahl zurück, wobei das negative Vorzeichen entfernt wird.

Available Functions

1 — Gibt den Absolutwert einer ganzen Zahl zurück.

int abs( int x );

2 — Gibt den Absolutwert einer Gleitkommazahl zurück.

double abs( double x );

Parameters

Parameter

Typ

Beschreibung

x

int or double

Eine ganze Zahl oder eine Gleitkommazahl.

Return Values

Gibt den Absolutwert der Eingabe als denselben Typ zurück.

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

// Output: 10

fmin#

Gibt den kleineren von zwei Werten als Gleitkommazahl (double) zurück.

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

Parameters

Parameter

Typ

Beschreibung

value1

double

Der erste zu vergleichende Wert.

value2

double

Der zweite zu vergleichende Wert.

Return Values

Gibt einen double zurück, der den kleineren der beiden Eingabewerte darstellt.

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

// Output: 4.000000

fmax#

Gibt den höheren von zwei Werten als Gleitkommazahl (double) zurück.

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

Parameters

Parameter

Typ

Beschreibung

value1

double

Der erste zu vergleichende Wert.

value2

double

Der zweite zu vergleichende Wert.

Return Values

Gibt einen double zurück, der den größeren der beiden Eingabewerte darstellt.

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

// Output: 7.000000

pow#

Gibt eine Zahl potenziert mit einem Gleitkommawert zurück.

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

Parameters

Parameter

Typ

Beschreibung

base

double

Die Basiszahl.

exponent

double

Der Exponent.

Return Values

Gibt einen Wert vom Typ double zurück, der die Basis potenziert mit dem Exponenten darstellt.

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

// Output: 8.000000

Konstanten#

Konstanten sind vordefinierte Werte, die während eines Projekts unverändert bleiben. Sie können in Berechnungen verwendet werden, ohne dass eine Definition oder Zuweisung erforderlich ist.

M_PI#

M_PI gibt die mathematische Konstante π an, das Verhältnis des Umfangs eines Kreises zu seinem Durchmesser.

Available Constants
const double M_PI;

Parameters

Diese Konstante hat keine Parameter.

Return Values

Gibt die mathematische Konstante π als double zurück.

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#

Die mathematische Konstante e (Eulersche Zahl), die Basis des natürlichen Logarithmus.

Available Constants
const double M_E;

Parameters

Diese Konstante hat keine Parameter.

Return Values

Gibt die mathematische Konstante e als double zurück.

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#

Berechnet den Sinus eines Winkels im Bogenmaß und gibt einen Double-Wert zurück.

Available Functions
double sin( double x );

Parameters

Parameter

Typ

Beschreibung

x

double

Ein Doppelwert, der einen Winkel im Bogenmaß darstellt.

Return Values

Gibt einen Wert vom double zurück, der den Sinus des Winkels darstellt.

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#

Berechnet den Kosinus eines Winkels im Bogenmaß und gibt einen Double-Wert zurück.

Available Functions
double cos( double x );

Parameters

Parameter

Typ

Beschreibung

x

double

Ein Doppelwert, der einen Winkel im Bogenmaß darstellt.

Return Values

Gibt einen double zurück, der den Kosinus des Winkels darstellt.

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#

Berechnet den Tangens eines Winkels im Bogenmaß und gibt einen Gleitkommawert (double) zurück.

Available Functions
double tan( double x );

Parameters

Parameter

Typ

Beschreibung

x

double

Ein Doppelwert, der einen Winkel im Bogenmaß darstellt.

Return Values

Gibt einen Wert vom Typ double zurück, der den Tangens des Winkels darstellt.

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#

Berechnet den Arkustangens einer Zahl und gibt einen Double-Wert zurück, der den Winkel im Bogenmaß darstellt.

Available Functions
double atan( double x );

Parameters

Parameter

Typ

Beschreibung

x

double

Ein Gleitkommawert.

Return Values

Gibt einen Wert vom double zurück, der den Arkustangens im Bogenmaß darstellt.

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#

Berechnet den Hauptwert des Arkustangens von y/x und gibt einen Double-Wert zurück, der den Winkel im Bogenmaß darstellt.

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

Parameters

Parameter

Typ

Beschreibung

y

double

Ein Double-Wert, der die y-Koordinate darstellt.

x

double

Ein Gleitkommawert, der die x-Koordinate darstellt.

Return Values

Gibt einen Wert vom Typ double zurück, der den Arkustangens von y/x im Bogenmaß darstellt.

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#

Berechnet den Arkussinus einer Zahl und gibt einen Double-Wert zurück, der den Winkel im Bogenmaß darstellt.

Available Functions
double asin( double x );

Parameters

Parameter

Typ

Beschreibung

x

double

Ein Doppelwert zwischen -1 und 1.

Return Values

Gibt einen Wert vom Typ double zurück, der den Arkussinus im Bogenmaß darstellt.

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#

Berechnet den Arkuskosinus einer Zahl und gibt einen Double-Wert zurück, der den Winkel im Bogenmaß darstellt.

Available Functions
double acos( double x );

Parameters

Parameter

Typ

Beschreibung

x

double

Ein Doppelwert zwischen -1 und 1.

Return Values

Gibt einen Wert vom double zurück, der den Arkuskosinus im Bogenmaß darstellt.

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

Rundung & Absolutwert#

ceil#

Gibt eine Zahl als Double aufgerundet zurück.

Available Functions
double ceil( double x );

Parameters

Parameter

Typ

Beschreibung

x

double

Ein Doppelbetrag, der aufgerundet wird.

Return Values

Gibt einen double Wert zurück, der die kleinste ganze Zahl größer oder gleich x darstellt.

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

// Output: 10.000000

floor#

Gibt eine abgerundete Zahl als Gleitkommazahl zurück.

Available Functions
double floor( double x );

Parameters

Parameter

Typ

Beschreibung

x

double

Ein Double wird abgerundet.

Return Values

Gibt einen double Wert zurück, der die größte ganze Zahl kleiner oder gleich x darstellt.

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

// Output: 9.000000

trunc#

Gibt eine Zahl als Gleitkommazahl zurück, deren Dezimalteil auf Null gesetzt ist.

Available Functions
double trunc( double x );

Parameters

Parameter

Typ

Beschreibung

x

double

Ein Double, das abgeschnitten werden soll.

Return Values

Gibt eine double zurück, wobei der Dezimalteil entfernt wurde.

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

// Output: 9.000000

Exponenten und Logarithmen#

sqrt#

Gibt die Quadratwurzel einer Zahl zurück.

Available Functions
double sqrt( double x );

Parameters

Parameter

Typ

Beschreibung

x

double

Ein nicht-negatives Doppel.

Return Values

Gibt einen Wert vom double zurück, der die Quadratwurzel von x darstellt.

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

// Output: 11.000000

exp#

Berechnet die Exponentialfunktion einer Zahl.

Available Functions
double exp( double x );

Parameters

Parameter

Typ

Beschreibung

x

double

Eine Gleitkommazahl, um die Exponentialfunktion zu berechnen.

Return Values

Gibt einen double zurück, der e hoch x darstellt.

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

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

log#

Berechnet den natürlichen Logarithmus einer Zahl.

Available Functions
double log( double x );

Parameters

Parameter

Typ

Beschreibung

x

double

Ein positives Doppel.

Return Values

Gibt einen double zurück, der den natürlichen Logarithmus von x darstellt.

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

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

log10#

Berechnet den Zehnerlogarithmus einer Zahl.

Available Functions
double log10( double x );

Parameters

Parameter

Typ

Beschreibung

x

double

Ein positives Doppel.

Return Values

Gibt einen double zurück, der den Logarithmus zur Basis 10 von x darstellt.

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

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

Gleitkommaoperationen#

fmod#

Gibt den Rest der Division zurück, wobei das Vorzeichen des Dividenden erhalten bleibt.

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

Parameters

Parameter

Typ

Beschreibung

x

double

Die Dividende.

y

double

Der Divisor.

Return Values

Gibt einen Wert vom double zurück, der den Rest von x/y mit dem Vorzeichen von x darstellt.

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#

Gibt eine Zahl mit dem Betrag von x und dem Vorzeichen von y zurück.

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

Parameters

Parameter

Typ

Beschreibung

x

double

Der Wert, dessen Betrag verwendet wird.

y

double

Der Wert, dessen Vorzeichen verwendet wird.

Return Values

Gibt einen double mit dem Betrag von x und dem Vorzeichen von y zurück.

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

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