Mathématiques#

Introduction#

La bibliothèque standard C++ fournit des fonctionnalités mathématiques de base via les fonctions <cmath>, prises en charge par VEXcode IQ. Ces fonctions permettent d’effectuer des opérations mathématiques courantes telles que la trigonométrie, l’arrondi, l’exponentiation, etc.

Utilisez-les pour calculer des positions, des angles, des distances ou pour effectuer des conversions entre degrés et radians.

Vous trouverez ci-dessous une liste des fonctions mathématiques, constantes et utilitaires disponibles :

Fonctions mathématiques courantes – Outils mathématiques courants.

  • abs – Renvoie la valeur absolue d’un nombre.

  • fmin – Renvoie la plus petite des valeurs d’entrée.

  • fmax – Renvoie la plus grande des valeurs d’entrée.

  • pow – Élève un nombre à une puissance.

Constantes – Valeurs prédéfinies de <cmath>.

  • M_PI – La constante π (pi).

  • M_E – Nombre d’Euler, base du logarithme naturel.

Trigonométrie – Calcul des angles et des relations entre les côtés.

  • sin – Sinus d’un angle en radians.

  • cos – Cosinus d’un angle en radians.

  • tan – Tangente d’un angle en radians.

  • atan – Arctangente d’une valeur en radians.

  • atan2 – Arctangente de y/x en radians, en considérant le quadrant.

  • asin – Arcsinus d’une valeur en radians.

  • acos – Arccosinus d’une valeur en radians.

Arrondi et valeur absolue – Ajustez la précision ou la direction.

  • ceil – Arrondit à l’entier supérieur le plus proche.

  • floor – Arrondit à l’entier inférieur le plus proche.

  • trunc – Supprime la partie décimale.

Exposants et logarithmes – Calculs de puissance, de racine et de logarithme.

  • sqrt – Renvoie la racine carrée.

  • exp – Calcule e à la puissance x.

  • log – Logarithme naturel (base e).

  • log10 – Logarithme en base 10.

Opérations sur les nombres à virgule flottante – Examiner ou décomposer les valeurs flottantes.

  • fmod – Reste avec le signe du dividende.

  • copysign – Renvoie une valeur avec le signe d’une autre.

Fonctions mathématiques courantes#

abs#

Renvoie la valeur absolue d’un nombre, en supprimant tout signe négatif.

Available Functions

1 — Renvoie la valeur absolue d’un entier.

int abs( int x );

2 — Renvoie la valeur absolue d’un double.

double abs( double x );

Parameters

Paramètre

Taper

Description

x

int or double

Un entier ou un nombre à virgule flottante.

Return Values

Renvoie la valeur absolue de l’entrée dans le même type.

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

// Output: 10

fmin#

Renvoie la plus petite des deux valeurs sous forme de nombre décimal.

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

Parameters

Paramètre

Taper

Description

value1

double

La première valeur à comparer.

value2

double

La deuxième valeur à comparer.

Return Values

Renvoie un nombre décimal double représentant la plus petite des deux valeurs d’entrée.

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

// Output: 4.000000

fmax#

Renvoie la plus élevée des deux valeurs sous forme de nombre décimal.

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

Parameters

Paramètre

Taper

Description

value1

double

La première valeur à comparer.

value2

double

La deuxième valeur à comparer.

Return Values

Renvoie un nombre décimal double représentant la plus grande des deux valeurs d’entrée.

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

// Output: 7.000000

pow#

Renvoie un nombre élevé à une puissance sous forme de double.

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

Parameters

Paramètre

Taper

Description

base

double

Le nombre de base.

exponent

double

L’exposant.

Return Values

Renvoie un double double représentant la base élevée à la puissance de l’exposant.

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

// Output: 8.000000

Constantes#

Les constantes sont des valeurs prédéfinies qui restent fixes pendant toute la durée d’un projet. Elles peuvent être utilisées dans les calculs sans nécessiter de définition ni d’affectation.

M_PI#

M_PI donne la constante mathématique π, le rapport de la circonférence d’un cercle à son diamètre.

Available Constants
const double M_PI;

Parameters

Cette constante ne possède pas de paramètres.

Return Values

Renvoie la constante mathématique π sous la forme d’un 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#

La constante mathématique e (nombre d’Euler), la base du logarithme naturel.

Available Constants
const double M_E;

Parameters

Cette constante ne possède pas de paramètres.

Return Values

Renvoie la constante mathématique e sous la forme d’un double.

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

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

// Output: 7.389056

Trigonométrie#

sin#

Calcule le sinus d’un angle en radians et renvoie une valeur double.

Available Functions
double sin( double x );

Parameters

Paramètre

Taper

Description

x

double

Un nombre décimal représentant un angle en radians.

Return Values

Renvoie un double représentant le sinus de l’angle.

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#

Calcule le cosinus d’un angle en radians et renvoie un nombre décimal.

Available Functions
double cos( double x );

Parameters

Paramètre

Taper

Description

x

double

Un nombre décimal représentant un angle en radians.

Return Values

Renvoie un double représentant le cosinus de l’angle.

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#

Calcule la tangente d’un angle en radians et renvoie une valeur double.

Available Functions
double tan( double x );

Parameters

Paramètre

Taper

Description

x

double

Un nombre décimal représentant un angle en radians.

Return Values

Renvoie un double représentant la tangente de l’angle.

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#

Calcule l’arc tangente d’un nombre et renvoie un nombre décimal représentant l’angle en radians.

Available Functions
double atan( double x );

Parameters

Paramètre

Taper

Description

x

double

Une valeur double.

Return Values

Renvoie un double double représentant l’arc tangente en radians.

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#

Calcule la valeur principale de l’arc tangente de y/x et renvoie une valeur double représentant l’angle en radians.

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

Parameters

Paramètre

Taper

Description

y

double

Un nombre décimal représentant la coordonnée y.

x

double

Un nombre décimal représentant la coordonnée x.

Return Values

Renvoie un double double représentant l’arc tangente de y/x en radians.

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#

Calcule l’arcsinus d’un nombre et renvoie un nombre décimal représentant l’angle en radians.

Available Functions
double asin( double x );

Parameters

Paramètre

Taper

Description

x

double

Un double compris entre -1 et 1.

Return Values

Renvoie un double double représentant l’arc sinus en radians.

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#

Calcule l’arc cosinus d’un nombre et renvoie un nombre décimal représentant l’angle en radians.

Available Functions
double acos( double x );

Parameters

Paramètre

Taper

Description

x

double

Un double compris entre -1 et 1.

Return Values

Renvoie un double double représentant l’arc cosinus en radians.

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

Arrondi et valeur absolue#

ceil#

Renvoie un nombre arrondi à l’entier supérieur sous forme de double.

Available Functions
double ceil( double x );

Parameters

Paramètre

Taper

Description

x

double

Un double à arrondir.

Return Values

Renvoie un double double représentant le plus petit entier supérieur ou égal à x.

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

// Output: 10.000000

floor#

Renvoie un nombre arrondi à l’entier inférieur sous forme de double.

Available Functions
double floor( double x );

Parameters

Paramètre

Taper

Description

x

double

Un double à arrondir à l’inférieur.

Return Values

Renvoie un nombre décimal double représentant le plus grand entier inférieur ou égal à x.

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

// Output: 9.000000

trunc#

Renvoie un nombre sous forme de double, avec sa partie décimale mise à zéro.

Available Functions
double trunc( double x );

Parameters

Paramètre

Taper

Description

x

double

Un double à tronquer.

Return Values

Renvoie un double sans la partie décimale.

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

// Output: 9.000000

Exposants et logarithmes#

sqrt#

Renvoie la racine carrée d’un nombre.

Available Functions
double sqrt( double x );

Parameters

Paramètre

Taper

Description

x

double

Un double non négatif.

Return Values

Renvoie un double représentant la racine carrée de x.

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

// Output: 11.000000

exp#

Calcule l’exponentielle d’un nombre.

Available Functions
double exp( double x );

Parameters

Paramètre

Taper

Description

x

double

Un double pour calculer l’exponentielle de.

Return Values

Renvoie un double double représentant e élevé à la puissance x.

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

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

log#

Calcule le logarithme népérien d’un nombre.

Available Functions
double log( double x );

Parameters

Paramètre

Taper

Description

x

double

Un double positif.

Return Values

Renvoie un double représentant le logarithme naturel de x.

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

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

log10#

Calcule le logarithme décimal d’un nombre.

Available Functions
double log10( double x );

Parameters

Paramètre

Taper

Description

x

double

Un double positif.

Return Values

Renvoie un double représentant le logarithme en base 10 de x.

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

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

Opérations en virgule flottante#

fmod#

Renvoie le reste de la division tout en conservant le signe du dividende.

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

Parameters

Paramètre

Taper

Description

x

double

Le dividende.

y

double

Le diviseur.

Return Values

Renvoie un double double représentant le reste de x/y avec le signe de 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#

Renvoie un nombre dont la magnitude est égale à x et le signe à y.

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

Parameters

Paramètre

Taper

Description

x

double

La valeur dont on utilisera la magnitude.

y

double

La valeur dont le signe sera utilisé.

Return Values

Renvoie un double avec la magnitude de x et le signe de y.

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

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