【C言語】short型の数値の絶対値を計算する方法

この記事では、C言語でshort型の数値の絶対値を計算する方法を解説します。

目次から探す

short型の数値の絶対値を計算する方法

C言語において、short型の数値の絶対値を計算する方法には、主に条件分岐を使った方法とビット演算を使った方法の2つがあります。

それぞれの方法について詳しく解説します。

条件分岐を使った方法

条件分岐を使った方法では、与えられた数値が負の場合には符号を反転させることで絶対値を求めます。

具体的な手順は以下の通りです。

  1. もし与えられた数値が負の場合、その数値に-1を掛けて符号を反転させます。
  2. 絶対値を求めるための計算結果を別の変数に代入します。

以下に、条件分岐を使った方法のサンプルコードを示します。

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

上記のコードでは、absoluteValue関数を定義し、与えられた数値が負の場合には符号を反転させる処理を行っています。

main関数では、numに-10を代入し、absoluteValue関数を呼び出して絶対値を求め、その結果をabsNumに代入しています。

最後に、絶対値を表示するためにprintf関数を使用しています。

上記のコードを実行すると、以下のような結果が得られます。

絶対値: 10

ビット演算を使った方法

ビット演算を使った方法では、与えられた数値の符号ビットを反転させることで絶対値を求めます。

具体的な手順は以下の通りです。

  1. もし与えられた数値が負の場合、その数値の符号ビットを反転させます。
  2. 絶対値を求めるための計算結果を別の変数に代入します。

以下に、ビット演算を使った方法のサンプルコードを示します。

#include <stdio.h>
short absoluteValue(short num) {
    num = num & ~(1 << 15);
    return num;
}
int main() {
    short num = -10;
    short absNum = absoluteValue(num);
    printf("絶対値: %d\n", absNum);
    return 0;
}

上記のコードでは、absoluteValue関数を定義し、与えられた数値の符号ビットを反転させる処理を行っています。

main関数では、numに-10を代入し、absoluteValue関数を呼び出して絶対値を求め、その結果をabsNumに代入しています。

最後に、絶対値を表示するためにprintf関数を使用しています。

上記のコードを実行すると、以下のような結果が得られます。

絶対値: 10

以上が、short型の数値の絶対値を計算する方法についての解説です。

条件分岐を使った方法とビット演算を使った方法の2つのアプローチを紹介しました。

どちらの方法も絶対値を求めることができますので、状況に応じて適切な方法を選択してください。

目次から探す