Section courante

A propos

Section administrative du site

En C, il existe une fonction «ceil» ou «floor» permettant d'arrondir en basse supérieure ou inférieure, mais aucun arrondissement comme dans les autres langages comme PHP par exemple permettant d'arrondir comme dans nos bons vieux livres de mathématique. Malgré la simplicité de la fonction à écrire, je n'ai rencontré aucune réponse pertinente sur les nombreux Forum, d'où la raison de l'écriture de cette page. Voici donc un simple petit programme montrant comment écrire une fonction «round» à partir de la fonction «floor» de l'entête «math» :

Essayer maintenant !
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4.  
  5. double round(double value) {
  6.      return floor(value + 0.5);
  7. }
  8.  
  9. int main()
  10. {
  11.     double I;
  12.     for(I=-2;I<=2;I+=0.1) {
  13.         printf("Le nombre %f est arrondie à %.0f\n",I,round(I));
  14.     }
  15.     return 0;
  16. }

on obtiendra le résultat suivant :

Le nombre -2.000000 est arrondie à -2
Le nombre -1.900000 est arrondie à -2
Le nombre -1.800000 est arrondie à -2
Le nombre -1.700000 est arrondie à -2
Le nombre -1.600000 est arrondie à -2
Le nombre -1.500000 est arrondie à -1
Le nombre -1.400000 est arrondie à -1
Le nombre -1.300000 est arrondie à -1
Le nombre -1.200000 est arrondie à -1
Le nombre -1.100000 est arrondie à -1
Le nombre -1.000000 est arrondie à -1
Le nombre -0.900000 est arrondie à -1
Le nombre -0.800000 est arrondie à -1
Le nombre -0.700000 est arrondie à -1
Le nombre -0.600000 est arrondie à -1
Le nombre -0.500000 est arrondie à 0
Le nombre -0.400000 est arrondie à 0
Le nombre -0.300000 est arrondie à 0
Le nombre -0.200000 est arrondie à 0
Le nombre -0.100000 est arrondie à 0
Le nombre 0.000000 est arrondie à 0
Le nombre 0.100000 est arrondie à 0
Le nombre 0.200000 est arrondie à 0
Le nombre 0.300000 est arrondie à 0
Le nombre 0.400000 est arrondie à 0
Le nombre 0.500000 est arrondie à 1
Le nombre 0.600000 est arrondie à 1
Le nombre 0.700000 est arrondie à 1
Le nombre 0.800000 est arrondie à 1
Le nombre 0.900000 est arrondie à 1
Le nombre 1.000000 est arrondie à 1
Le nombre 1.100000 est arrondie à 1
Le nombre 1.200000 est arrondie à 1
Le nombre 1.300000 est arrondie à 1
Le nombre 1.400000 est arrondie à 1
Le nombre 1.500000 est arrondie à 2
Le nombre 1.600000 est arrondie à 2
Le nombre 1.700000 est arrondie à 2
Le nombre 1.800000 est arrondie à 2
Le nombre 1.900000 est arrondie à 2


Dernière mise à jour : Samedi, le 22 août 2015