Cours 8.9. Fonctions mathématiques en C (2025)

Cours 8.8 Sommaire Cours 9.1

math.h

La bibliothèque standard math.h contient une dizaine de fonctions mathématiques usuelles comme

  • cosinus
  • sinus
  • tangente
  • puissance
  • racine carré
  • exponentielle
  • logarithmique
  • ...
#include <math.h>

Toutes les fonctions qui font intervenir des angles utilisent le radian comme unité.

Liste des fonctions de math.h

La liste des fonctions peut être trouvée sur la page Wikipedia de math.h.Voici quelques-unes des plus usuelles :

// Sinus de Xdouble sin(double X);
// Cosinus de Xdouble cos(double X);
// Tangente de Xdouble tan(double X);
// Arcsin(X) dans le domaine [-π/2, π/2], x[-1, 1]double asin(double X);
// Arccos(X) dans le domaine [0, π], x[-1, 1]double acos(double X);
// Arctan(X) dans le domaine [-π/2, π/2]double atan(double X);
// Arc tangente du quotient de ses arguments (dans le bon quadran)double atan2( double Y, double X);
// Exponentielle de Xdouble exp(double X);
// Logarithme naturel : ln(X), X>0double log(double X);
// Logarithme en base 10 : log10(X), X>0double log10(double X);
// X exposant Y (X puissance Y)double pow(double X, double Y);
// Racine carrée de X, X>=0double sqrt(double X);
// Valeur absolue de X : |X|double fabs(double X);
// Arrondie à l'entier inférieurdouble floor(double X);
// Arrondi à l'entier supérieurdouble ceil(double X);
// Arrondi au plus prochedouble round(double X);

Nous n'allons pas détailler chaque fonction, mais seulement la fonction atan2().

atan2

La fonction atan2() calcule l'arc tangente sur la base de coordonnéescartésiennes. En d'autres termes, atan2() permet de calculer l'angle formépar un vecteur x,y et l'axe des abscisses.

Cours 8.9. Fonctions mathématiques en C (1)

Notez l'ordre contre-intuitif des paramètres : y en premier, puis x.

Pi

La bibliothèque math.h définie la constante symbolique M_PI qui contient lavaleur de \( \pi \) :

#define M_PI 3.14159265358979323846

Dès lors que la bibliothèque math.h est incluse, cette constante est accessible.

Exemple

L'exemple suivant calcule l'angle formé par le vecteur x,y et l'axe des abscisses.

x = 1y = 0atan2(0.00, 1.00) = 0.0000 rad
x = 1y = 1atan2(1.00, 1.00) = 0.7854 rad

Exercices

Exercice 1

Écrire une fonction pythagore() qui calcule la longueur de l’hypoténuse d'untriangle à partir de la longueur des deux autres côtés. On rappelle ici le théorème de Pythagore :

Le carré de la longueur de l’hypoténuse, qui est le côté opposé à l'angle droit, est égal à la somme des carrés des longueurs des deux autres côtés.

Coté opposé = 4.0Coté adjacent = 3.0Hypoténuse = 5.00

Exercice 2

Écrire un programme qui affiche les coordonnées des points d'un cercleunitaire avec un pas de 20 degrés. On rappelle que les coordonnées du cercleunitaire peuvent être calculées par les formules suivantes :

$$ \begin{bmatrix} x \\ y \end{bmatrix} =\begin{bmatrix} cos(\alpha) \\ sin(\alpha) \end{bmatrix} $$

Afficher les points conformément à cet exemple :

α=0.00 => [ 1.00 , y= 0.00]α=0.35 => [ 0.94 , y= 0.34]α=0.70 => [ 0.77 , y= 0.64]α=1.05 => [ 0.50 , y= 0.87]α=1.40 => [ 0.17 , y= 0.98]α=1.75 => [-0.17 , y= 0.98]α=2.09 => [-0.50 , y= 0.87]α=2.44 => [-0.77 , y= 0.64]α=2.79 => [-0.94 , y= 0.34]α=3.14 => [-1.00 , y= 0.00]α=3.49 => [-0.94 , y=-0.34]α=3.84 => [-0.77 , y=-0.64]α=4.19 => [-0.50 , y=-0.87]α=4.54 => [-0.17 , y=-0.98]α=4.89 => [ 0.17 , y=-0.98]α=5.24 => [ 0.50 , y=-0.87]α=5.59 => [ 0.77 , y=-0.64]α=5.93 => [ 0.94 , y=-0.34]α=6.28 => [ 1.00 , y=-0.00]

Exercice 3

Écrire une fonction qui calcule la distance entre un point de l'espace (x,y,z) et l'origine :

// Calcule la norme d'un vecteurdouble norme(double x, double y, double z);

Le programme principal demande à l'utilisateur de saisir les coordonnées d'un pointdu plan (X,Y) puis le programme affiche les coordonnées polaires de ce point :

X = 1.Y = 2.Argument = 1.11Norme = 2.24

Quiz

Pour calculer x², que peut-on utiliser ?

Vérifier Bravo ! La multiplication est plus rapide que la fonction pow(x,2) Essaie encore ...

Si l'on doit utiliser \( \pi \) dans un programme, comment procéder ?

Vérifier Bravo ! M_PI est déjà défini dans math.h. Essaie encore ...

Si l'on souhaite arrondir un nombre à l'entier inférieur, quelle syntaxe doit-on utiliser ?

double x=-2.7;

Vérifier Bravo ! Il faut utiliser la fonction floor. Le cast pourrait fonctionner pour les nombres positifs, mais pas pour les négatifs. Essaie encore ...

Cours 8.8 Sommaire Cours 9.1

Voir aussi

  • Cours de programmation en C
  • Cours 1.1. Histoire du C
  • Cours 1.2. Premier programme
  • Cours 1.3. Compilation
  • Cours 1.4. Les directives de compilation
  • Cours 1.5. Quel compilateur choisir ?
  • Cours 1.6. Les organigrammes
  • Cours 2.1. Les types de variables
  • Cours 2.2. Les entiers
  • Cours 2.3. Les nombres décimaux
  • Cours 2.4. Les caractères
  • Cours 2.5. Initialisation des variables
  • Cours 2.6. Le vol 501 d'Ariane
  • Cours 3.1. Les opérateurs arithmétiques
  • Cours 3.2. Le modulo
  • Cours 3.3. Le type dans les opérations
  • Cours 3.4. Les conversion de type forcé
  • Cours 3.5. Les opérateurs bit à bit
  • Cours 3.6. Détail des opérateurs bit à bit
  • Cours 3.7. Opérateurs de décalage
  • Cours 3.8. Opérateurs d'affectation
  • Cours 3.9. Opérateur d'incrémentation/décrémentation
  • Cours 3.10. Les opérateurs de comparaison
  • Cours 3.11. Opérateurs logiques
  • Cours 3.12. Priorité des opérateurs
  • Cours 4.1. printf
  • Cours 4.2. scanf
  • Cours 4.3. putchar
  • Cours 5.1. Branchement conditionnel (if...else)
  • Cours 5.2. if imbriqués et indentation
  • Cours 5.3. Tester des intervalles
  • Cours 5.4. Opérateur conditionnel ternaire ( ?: )
  • Cours 5.5. L'instruction switch..case
  • Cours 5.6. Le break dans les switchs
  • Cours 6.1. La boucle do..while en C
  • Cours 6.2. La boucle while en C
  • Cours 6.3. La boucle for
  • Cours 6.4. Comment choisir une boucle en C ?
  • Cours 6.5. Exercices sur les boucles en C
  • Cours 7.1. Masquages
  • Cours 7.2. Masquage : forçage à zéro
  • Cours 7.3. Forçage à un
  • Cours 7.4. Inversion de bits
  • Cours 7.5. Tester un bit
  • Cours 7.6. Synthèse des masquages
  • Cours 8.1. Syntaxe des fonctions en C
  • Cours 8.2. L'appel des fonctions
  • Cours 8.3. Le mot-clé void dans les fonctions
  • Cours 8.4. Le mot-clé return dans les fonctions
  • Cours 8.5. Portée des variables
  • Cours 8.6. Les variables globales
  • Cours 8.7. Les variables statiques
  • Cours 8.8. Nombres aléatoires en C
  • Cours 9.1. Syntaxe des tableaux en C
  • Cours 9.2. Initialisation des tableaux en C
  • Cours 9.3. Les tableaux multidimensionnels en C
  • Cours 9.4. Comment les tableaux sont stockés en mémoire en C?
  • Cours 9.5. Les tableaux dans les fonctions
  • Cours 9.6. Exercices sur les tableaux en C
  • Cours 10.1. Les chaines de caractères en C
  • Cours 10.2. Le caractère de fin de chaîne
  • Cours 10.3. La bibliothèque string.h
  • Cours 10.4. Chaînes de caractères et fonctions
  • Cours 11.1. Introduction aux pointeurs en C
  • Cours 11.2. Syntaxe des pointeurs en C
  • Cours 11.3. Allocation mémoire dynamique
  • Cours 11.4. Incrémentation des pointeurs
  • Cours 11.5. Passage de paramètres par pointeur
  • Cours 12.1. Introduction aux structures en C
  • Cours 12.2. Propriétés des structures en C
  • Cours 12.3. Structures et pointeurs
  • Cours 12.4. Structures et fonctions
  • Cours 13.1. Fonctions récursives en C
  • Cours 13.2. Profondeur des fonctions récursives
  • Cours 13.3. Récursion croisée
  • Cours 14.1. Exercices complémentaires

Dernière mise à jour : 21/11/2022

Cours 8.9. Fonctions mathématiques en C (2)

Cours 8.9. Fonctions mathématiques en C (2025)

FAQs

Comment savoir que c'est une fonction ? ›

En mathématiques, une fonction est un type de relation f entre deux variables. On appelle cette relation une fonction lorsque chaque valeur de la variable indépendante est associée à une et une seule valeur de la variable dépendante.

Comment calculer les fonctions en mathématiques ? ›

Pour évaluer une fonction composée, on remplace 𝑔 et 𝑓 par leurs expressions, en commençant par l'intérieur et en progressant vers l'extérieur. Ici, l'expression la plus interne est 𝑔 ( 𝑥 ) , que l'on remplace donc par 𝑔 ( 𝑥 ) = 𝑥 − 2 , pour obtenir 𝑓 ( 𝑔 ( 𝑥 ) ) = 𝑓 ( 𝑥 − 2 ) .

Comment savoir si c'est une fonction ? ›

La relation est souvent exprimée à l'aide de paires ordonnées. Une fonction est un type particulier de relation où chaque valeur x est liée à une seule valeur y. Pour identifier une fonction à partir d'une relation, vérifiez si l'une des valeurs x est répétée - si ce n'est pas le cas, il s'agit d'une fonction.

Comment prouver que c'est une fonction ? ›

La fonction peut donc être définie par 𝑓 ( 𝑥 ) = 2 𝑥 + 4 (notation fonctionnelle) ou 𝑓 ∶ 𝑥 ⟶ 2 𝑥 + 4 (notation par flèche). Cela signifie que l'on peut déterminer si 𝑓 définit une fonction en traçant la représentation graphique de 𝑦 = 𝑓 ( 𝑥 ) et en effectuant le test de la droite verticale.

Quel est la formule de la fonction ? ›

Une fonction, c'est une équation: f(x)=ax+b est la même chose que y=ax+b.

C'est quoi une fonction exemple ? ›

Une fonction peut être définie par plusieurs expressions valables sur des domaines disjoints, comme la fonction valeur absolue : . Par exemple, 9 est l'image de 3 par la fonction carré, et 3 est donc un antécédent de 9 (mais ce n'est pas le seul, puisque −3 est aussi un antécédent de 9).

Comment trouver la règle de la fonction ? ›

Lorsqu'on cherche la règle d'une fonction valeur absolue, 3 cas sont possibles. Dans tous les cas, on utilise la forme canonique simplifiée : f(x)=a|x−h|+k. f ( x ) = a | x − h | + k .

Que dois-je savoir pour les fonctions ? ›

Une fonction est définie comme une relation entre un ensemble d'entrées ayant chacune une sortie . En termes simples, une fonction est une relation entre des entrées où chaque entrée est liée à exactement une sortie. Chaque fonction a un domaine et un codomaine ou une plage. Une fonction est généralement désignée par f(x) où x est l'entrée.

Comment lire une fonction en maths ? ›

Pour déterminer les solutions d'une équation de la forme f(x) = k, on lit les abscisses des points d'intersection de la courbe avec la droite horizontale d'équation y = k. Dans le cas d'une inéquation f(x) < k, on lit les abscisses des points de la courbe situés au-dessous de la droite d'équation y = k.

Quels sont les 8 types de fonctions ? ›

Il existe en fait 8 types de fonctions. Ces huit fonctions différentes sont linéaires, puissance, quadratiques, polynomiales, rationnelles, exponentielles, logarithmiques et sinusoïdales .

Quelles sont les 7 fonctions ? ›

Les fonctions liées au verbe. Les sept fonctions grammaticales liées au verbe sont le sujet, le COD, le COI, le COS, l'attribut du sujet, l'attribut du COD et le complément d'agent.

Comment on calcule une fonction ? ›

d'une fonction f , notée f C , on calcule ( ) f a et on compare le résultat à b . Exemple : Le point ( ) 1 ; 4 A appartient à la courbe représentative de f définie par ( ) ² 2 3 =- + + f x x x , car (1) 1² 2 1 3 4 =- + × + = f .

Comment différencier une fonction ? ›

Pour trouver la différence entre deux fonctions dans un graphique, on soustrait l'image de la première fonction par l'image de la deuxième fonction. Pour être en mesure de produire le graphique, on peut faire une table des valeurs ou on peut utiliser les particularités de la fonction résultante.

Comment vérifier une fonction ? ›

Lorsque la courbe est au-dessus de l'axe 𝑥 des abscisses, le signe de la fonction est positif, quand elle est en dessous de l'axe 𝑥 des abscisses, le signe de la fonction est négatif et à l'intersection avec l'axe 𝑥 des abscisses, le signe de la fonction est nul.

Comment reconnaître une fonction en français ? ›

La fonction d'un mot ou d'un groupe de mots est le rôle qu'il occupe par rapport à un autre mot ou groupe de mots. Ainsi on dira d'un mot qu'il est le sujet du verbe x, le complément du nom y, etc.

Top Articles
Latest Posts
Recommended Articles
Article information

Author: Edmund Hettinger DC

Last Updated:

Views: 5741

Rating: 4.8 / 5 (58 voted)

Reviews: 81% of readers found this page helpful

Author information

Name: Edmund Hettinger DC

Birthday: 1994-08-17

Address: 2033 Gerhold Pine, Port Jocelyn, VA 12101-5654

Phone: +8524399971620

Job: Central Manufacturing Supervisor

Hobby: Jogging, Metalworking, Tai chi, Shopping, Puzzles, Rock climbing, Crocheting

Introduction: My name is Edmund Hettinger DC, I am a adventurous, colorful, gifted, determined, precious, open, colorful person who loves writing and wants to share my knowledge and understanding with you.