この記事では、C言語でdouble型
の数値を切り捨てる方法について解説します。
具体的には、floor関数
を使った切り捨て方法と、自作の切り捨て関数の作成方法を紹介します。
double型の数値を切り捨てする方法
プログラミングにおいて、double型
の数値を切り捨てる方法はいくつかあります。
ここでは、主にfloor関数
を使った切り捨てと、自作の切り捨て関数の作成について解説します。
floor関数を使った切り捨て
floor関数
は、math.hヘッダファイルに定義されている関数で、引数として与えられた数値を最も近い整数に切り捨てます。
double型
の数値を切り捨てる場合には、floor関数
を使用することができます。
以下に、floor関数
を使った切り捨てのサンプルコードを示します。
#include <stdio.h>
#include <math.h>
int main() {
double num = 3.14;
double result = floor(num);
printf("切り捨て後の値: %f\n", result);
return 0;
}
上記のコードでは、変数num
に3.14という値を代入し、floor関数
を使って切り捨てを行っています。
切り捨て後の値は、変数result
に格納され、printf関数
を使って結果を表示しています。
実行結果は以下のようになります。
切り捨て後の値: 3.000000
自作の切り捨て関数の作成
もし、math.hヘッダファイルを使用せずに切り捨てを行いたい場合には、自作の切り捨て関数を作成することもできます。
以下に、自作の切り捨て関数のサンプルコードを示します。
#include <stdio.h>
double truncate(double num) {
if (num >= 0) {
return (int)num;
} else {
return (int)(num - 1);
}
}
int main() {
double num = 3.14;
double result = truncate(num);
printf("切り捨て後の値: %f\n", result);
return 0;
}
上記のコードでは、truncate
という自作の関数を定義しています。
この関数では、引数として与えられた数値が正の場合は整数部分をそのまま返し、負の場合は整数部分を1つ引いた値を返します。
実行結果は以下のようになります。
切り捨て後の値: 3.000000
以上が、double型
の数値を切り捨てる方法についての解説です。
floor関数
を使った切り捨てや自作の切り捨て関数を使うことで、必要な場面で正確に数値を切り捨てることができます。