Section courante

A propos

Section administrative du site

MODF

Modulo à virgule
SVID 3, POSIX, BSD 4.3, ISO 9899 math.h

Syntaxe

double modf(double x, double *iptr);

Paramètres

Nom Description
x Ce paramètre permet d'indiquer l'expression contenant le nombre à traiter
iptr Ce paramètre permet d'indiquer la variable recevant la partie entière

Description

Cette fonction transforme un nombre réel en partie entière et en décimal (fraction).

Exemple

Voici quelques exemples typiques de l'utilisation de cette fonction :

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4.  
  5. int main() {
  6.  double temp;
  7.  temp = 9;
  8.  printf("modf(-81,9) = %.4f,%.4f\n",temp,modf(-81,&temp));
  9.  temp = 3;
  10.  printf("modf(15,3) = %.4f,%.4f\n",temp,modf(15,&temp));
  11.  temp = 3;
  12.  printf("modf(16,3) = %.4f,%.4f\n",temp,modf(16,&temp));
  13.  temp = 3;
  14.  printf("modf(16.9,3) = %.4f,%.4f\n",temp,modf(16.9,&temp));
  15.  temp = 3;
  16.  printf("modf(16.8,3) = %.4f,%.4f\n",temp,modf(16.8,&temp));
  17.  temp = 3;
  18.  printf("modf(16.7,3) = %.4f,%.4f\n",temp,modf(16.7,&temp));
  19.  temp = 3;
  20.  printf("modf(16.6,3) = %.4f,%.4f\n",temp,modf(16.6,&temp));
  21.  temp = 3;
  22.  printf("modf(16.5,3) = %.4f,%.4f\n",temp,modf(16.5,&temp));
  23.  temp = 3;
  24.  printf("modf(16.4,3) = %.4f,%.4f\n",temp,modf(16.4,&temp));
  25.  temp = 3;
  26.  printf("modf(16.3,3) = %.4f,%.4f\n",temp,modf(16.3,&temp));
  27.  temp = 3;
  28.  printf("modf(16.2,3) = %.4f,%.4f\n",temp,modf(16.2,&temp));
  29.  temp = 3;
  30.  printf("modf(16.1,3) = %.4f,%.4f\n",temp,modf(16.1,&temp));
  31.  temp = 3;
  32.  printf("modf(17,3) = %.4f,%.4f\n",temp,modf(17,&temp));
  33.  temp = 3;
  34.  printf("modf(18,3) = %.4f,%.4f\n",temp,modf(18,&temp));
  35.  temp = 3;
  36.  printf("modf(19,3) = %.4f,%.4f\n",temp,modf(19,&temp));
  37.  temp = 1;
  38.  printf("modf(0,1) = %.4f,%.4f\n",temp,modf(0,&temp));
  39.  return 0;
  40. }

on obtiendra le résultat suivant :

modf(-81,9) = -81.0000,-0.0000
modf(15,3) = 15.0000,0.0000
modf(16,3) = 16.0000,0.0000
modf(16.9,3) = 16.0000,0.9000
modf(16.8,3) = 16.0000,0.8000
modf(16.7,3) = 16.0000,0.7000
modf(16.6,3) = 16.0000,0.6000
modf(16.5,3) = 16.0000,0.5000
modf(16.4,3) = 16.0000,0.4000
modf(16.3,3) = 16.0000,0.3000
modf(16.2,3) = 16.0000,0.2000
modf(16.1,3) = 16.0000,0.1000
modf(17,3) = 17.0000,0.0000
modf(18,3) = 18.0000,0.0000
modf(19,3) = 19.0000,0.0000
modf(0,1) = 0.0000,0.0000

Voir également

Langage de programmation - C - Référence procédures et fonctions - modf

Dernière mise à jour : Samedi, le 27 juin 2015