0Pricing
C++ Academy · Leçon

L’en-tête cmath : pow, sqrt, abs, round

Utiliser la bibliothèque mathématique standard pour les opérations mathématiques courantes

L’en-tête cmath : pow, sqrt, abs, round est une leçon C++ Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage C++ Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours C++ Academy comprend 4 leçons au total.

L’en-tête <cmath>

Les fonctions mathématiques standard se trouvent dans <cmath>. La plupart acceptent et renvoient un double ; il existe aussi des surcharges pour float et long double.

Puissances : pow

std::pow(base, exp) élève base à la puissance exp. Renvoie un double.

#include <cmath>
double x = std::pow(2.0, 10);   // 1024.0
double y = std::pow(9.0, 0.5);  // 3.0

Racines carrées : sqrt cbrt

sqrt renvoie la racine carrée ; cbrt renvoie la racine cubique.

double s = std::sqrt(2.0);   // 1.414...
double c = std::cbrt(27.0);  // 3.0

Valeur absolue : abs

std::abs fonctionne avec les types entiers et flottants. Pour les entiers, utilisez <cstdlib> ou simplement std::abs.

#include <cmath>
#include <cstdlib>
int    i = std::abs(-5);     // 5
double d = std::abs(-3.14);  // 3.14

Arrondi : floor ceil round trunc

Quatre modes d’arrondi :

  • floor — vers moins l’infini
  • ceil — vers plus l’infini
  • round — vers l’entier le plus proche, les demi-unités s’éloignant de zéro
  • trunc — vers zéro

Exemples d’arrondi

Observez leurs différences avec des nombres positifs et négatifs.

std::cout << std::floor(3.7) << "\n";  // 3
std::cout << std::ceil(3.2)  << "\n";  // 4
std::cout << std::round(3.5) << "\n";  // 4
std::cout << std::trunc(-3.7) << "\n"; // -3
std::cout << std::floor(-3.7) << "\n"; // -4

Modulo pour les flottants : fmod

L’opérateur % fonctionne uniquement avec les entiers. Utilisez std::fmod pour les flottants.

double r = std::fmod(10.5, 3.0); // 1.5

Logarithmes

Trois variantes de log :

  • std::log — logarithme naturel (base e)
  • std::log10 — base 10
  • std::log2 — base 2 (C++11)

Exponentielle : exp

std::exp(x) calcule e^x. C’est l’inverse du logarithme naturel.

double e = std::exp(1.0);     // 2.718...
double x = std::log(e);       // 1.0

Trigonométrie

sin, cos, tan et leurs inverses (asin, acos, atan). Tous prennent des angles en radians.

double y = std::sin(M_PI / 2);  // 1.0
// Convert degrees to radians: deg * M_PI / 180

Constantes utiles (C++20)

C++20 a ajouté des constantes mathématiques nommées dans <numbers> : std::numbers::pi, e, sqrt2, et bien d’autres.

#include <numbers>
std::cout << std::numbers::pi;     // 3.14159...
std::cout << std::numbers::e;      // 2.71828...

Vérification rapide

Quelle fonction arrondit -3.7 à -4 ?

Récapitulatif

<cmath> couvre les puissances, les racines, la valeur absolue, l’arrondi, le modulo, les logarithmes, les exponentielles et la trigonométrie. Les fonctions trigonométriques utilisent des radians. C++20 a ajouté <numbers> pour les constantes nommées comme std::numbers::pi.

Questions Fréquemment Posées

La leçon « L’en-tête cmath : pow, sqrt, abs, round » est-elle gratuite ?

Oui — le texte complet de « L’en-tête cmath : pow, sqrt, abs, round » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours C++ Academy, passe à CoddyKit PRO. Le cours C++ Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « L’en-tête cmath : pow, sqrt, abs, round » ?

Utiliser la bibliothèque mathématique standard pour les opérations mathématiques courantes Tu pratiques C++ Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer C++ Academy ?

Aucune expérience préalable n'est requise. C++ Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.

Combien de temps prend la leçon « L’en-tête cmath : pow, sqrt, abs, round » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon C++ Academy ?

Oui. Chaque leçon C++ Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Types entiers et à virgule flottante
  2. L’en-tête cmath : pow, sqrt, abs, round
  3. Nombres aléatoires avec l’en-tête random
  4. Limites numériques et comportement en cas de dépassement
← Retour à C++ Academy