この記事では、C言語でshort型
の数値の絶対値を計算する方法を解説します。
short型の数値の絶対値を計算する方法
C言語において、short型
の数値の絶対値を計算する方法には、主に条件分岐を使った方法とビット演算を使った方法の2つがあります。
それぞれの方法について詳しく解説します。
条件分岐を使った方法
条件分岐を使った方法では、与えられた数値が負の場合には符号を反転させることで絶対値を求めます。
具体的な手順は以下の通りです。
- もし与えられた数値が負の場合、その数値に-1を掛けて符号を反転させます。
- 絶対値を求めるための計算結果を別の変数に代入します。
以下に、条件分岐を使った方法のサンプルコードを示します。
#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
ビット演算を使った方法
ビット演算を使った方法では、与えられた数値の符号ビットを反転させることで絶対値を求めます。
具体的な手順は以下の通りです。
- もし与えられた数値が負の場合、その数値の符号ビットを反転させます。
- 絶対値を求めるための計算結果を別の変数に代入します。
以下に、ビット演算を使った方法のサンプルコードを示します。
#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つのアプローチを紹介しました。
どちらの方法も絶対値を求めることができますので、状況に応じて適切な方法を選択してください。