【C言語】小数を含むdouble型の数値の絶対値を計算する方法

この記事では、C言語で小数を含むdouble型の数値の絶対値を計算する方法について解説します。

目次から探す

絶対値を計算する方法

数値の絶対値を求めるとは、その数値が負の場合には符号を反転させて正の値にする操作です。

C言語では、絶対値を計算するためのいくつかの方法があります。

ここでは、条件分岐を使う方法と数学関数を使う方法について解説します。

方法1: 条件分岐を使う方法

条件分岐を使って絶対値を計算する方法は、以下のような手順で行います。

  1. もし数値が負の場合、符号を反転させる。
  2. 絶対値を求める。

以下に、条件分岐を使った絶対値の計算のサンプルコードを示します。

#include <stdio.h>
double absoluteValue(double num) {
    if (num < 0) {
        num = -num;
    }
    return num;
}
int main() {
    double num = -3.14;
    double absNum = absoluteValue(num);
    printf("絶対値: %f\n", absNum);
    return 0;
}

上記のコードでは、absoluteValueという関数を定義しています。

この関数は、引数として与えられた数値が負の場合には符号を反転させ、絶対値を返します。

main関数では、numという変数に-3.14を代入し、absoluteValue関数を呼び出して絶対値を求め、結果を表示しています。

実行結果は以下のようになります。

絶対値: 3.140000

方法2: 数学関数を使う方法

C言語には、絶対値を計算するための数学関数が用意されています。

ここでは、fabs関数abs関数を使った絶対値の計算方法について解説します。

fabs関数を使った絶対値の計算方法

fabs関数は、<math.h>ヘッダファイルに定義されており、引数として与えられたdouble型の数値の絶対値を返します。

以下に、fabs関数を使った絶対値の計算のサンプルコードを示します。

#include <stdio.h>
#include <math.h>
int main() {
    double num = -3.14;
    double absNum = fabs(num);
    printf("絶対値: %f\n", absNum);
    return 0;
}

上記のコードでは、numという変数に-3.14を代入し、fabs関数を使って絶対値を求め、結果を表示しています。

実行結果は以下のようになります。

絶対値: 3.140000

abs関数を使った絶対値の計算方法

abs関数は、<stdlib.h>ヘッダファイルに定義されており、引数として与えられた整数型の数値の絶対値を返します。

以下に、abs関数を使った絶対値の計算のサンプルコードを示します。

#include <stdio.h>
#include <stdlib.h>
int main() {
    int num = -5;
    int absNum = abs(num); //小数点以下が切り捨てられるので注意
    printf("絶対値: %d\n", absNum);
    return 0;
}

上記のコードでは、numという変数に-5を代入し、abs関数を使って絶対値を求め、結果を表示しています。

実行結果は以下のようになります。

絶対値: 5

以上が、C言語で小数を含むdouble型の数値の絶対値を計算する方法についての解説です。

条件分岐を使う方法と数学関数を使う方法の2つのアプローチを紹介しました。

どちらの方法も使いやすいので、状況に応じて適切な方法を選んでください。

目次から探す