≫ ホーム ≫ C言語ヘッダファイル別一覧 | C言語アルファベット別一覧 ≫ math.h ≫ fmod, fmodf, fmodl
余剰を計算します.
#include <math.h>
double fmod( double x, double y );
fmod 関数は x / y の浮動小数点余剰を計算し,結果を double 型で返します.
#include <math.h>
float fmodf( float x, float y );
fmodf 関数は x / y の浮動小数点余剰を計算し,結果を float 型で返します.
#include <math.h>
long double fmodl( long double x, long double y );
fmodl 関数は x / y の浮動小数点余剰を計算し,結果を long double 型で返します.
fmod,fmodf,fmodl 関数の結果は x と同じ符号をもち,y の絶対値より小さい絶対値を持ちます.また,処理系によっては y が 0 の場合,定義域エラー (domain error) が発生する可能性があります.
以下に fmod 関数を使用したサンプルプログラムを示します.
/* header files */
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
/* main */
int main(void) {
double x, y;
double rem;
printf("x の値を入力して下さい> ");
scanf("%lf", &x);
printf("y の値を入力して下さい> ");
scanf("%lf", &y);
/* 余剰を求める */
rem = fmod(x, y);
printf("%.2f %% %.2f = %.2f\n", x, y, rem);
return EXIT_SUCCESS;
}
サンプルプログラムの実行結果は以下のようになります.
x の値を入力して下さい> 13.5 y の値を入力して下さい> 2 13.50 % 2.00 = 1.50 x の値を入力して下さい> -13.5 y の値を入力して下さい> 2 -13.50 % 2.00 = -1.50 x の値を入力して下さい> 13.5 y の値を入力して下さい> -2 13.50 % -2.00 = 1.50