.NET TIPS

絶対値を計算するには?[C#、VB]

デジタルアドバンテージ 一色 政彦
2008/01/17

 数値の絶対値(英語では「absolute value」)を求めるには、Mathクラス(System名前空間)の静的メソッドAbsを使う。

 Math.Absメソッドは、パラメータにInt32型(=C#ではint型/VBではInteger型)の数値を指定して呼び出すと、戻り値として絶対値を(パラメータと同じ)Int32型の数値で返す。Int32型のほか、次のようなデータ型にも対応している。

  • Int16型(=C#ではshort型/VBではShort型)
  • Int32型(=int/Integer)
  • Int64型(=long/Long)
  • Decimal型(=decimal/Decimal)
  • Single型(=float/Single)
  • Double型(=double/Double)

 次のコードはMath.Absメソッドを使用したコンソール・アプリケーションのサンプル・プログラムである。

using System;

class Program
{
  static void Main(string[] args)
  {
    short valueOfInt16 = -1;
    short absOfInt16 = Math.Abs(valueOfInt16);
    Console.WriteLine(absOfInt16); // 出力:1

    int absOfInt32 = Math.Abs(-2);
    Console.WriteLine(absOfInt32); // 出力:2

    long absOfInt64 = Math.Abs(-3L);
    Console.WriteLine(absOfInt64); // 出力:3

    decimal absOfDecimal = Math.Abs(-4m);
    Console.WriteLine(absOfDecimal); // 出力:4

    float absOfSingle = Math.Abs(-5.1f);
    Console.WriteLine(absOfSingle); // 出力:5.1

    double absOfDouble = Math.Abs(-6.2d);
    Console.WriteLine(absOfDouble); // 出力:6.2
  }
}
Module Module1

  Sub Main()
    Dim absOfInt16 As Short = Math.Abs(-1S)
    Console.WriteLine(absOfInt16) ' 出力:1

    Dim absOfInt32 As Integer = Math.Abs(-2I)
    Console.WriteLine(absOfInt32) ' 出力:2

    Dim absOfInt64 As Long = Math.Abs(-3L)
    Console.WriteLine(absOfInt64) ' 出力:3

    Dim absOfDecimal As Decimal = Math.Abs(-4D)
    Console.WriteLine(absOfDecimal) ' 出力:4

    Dim absOfSingle As Single = Math.Abs(-5.1F)
    Console.WriteLine(absOfSingle) ' 出力:5.1

    Dim absOfDouble As Double = Math.Abs(-6.2R)
    Console.WriteLine(absOfDouble) ' 出力:6.2
  End Sub

End Module
絶対値を求めるサンプル・プログラム(上:C#、下:VB)

 パラメータに指定した数値の後ろに付いているサフィックス(C#の「L」「m」「f」「d」や、VBの「S」「I」「L」「D」「F」「R」など)は、数値のデータ型を明示するためのものだ。詳しくは「TIPS:数値のデータ型を明示的に指定するには?」を参照してほしい。ちちなみにC#ではshort型を明示的に指定するサフィックスは用意されていないため、上記のサンプル・プログラムではshort型変数を宣言している。End of Article

カテゴリ:クラス・ライブラリ 処理対象:数値関数
使用ライブラリ:Mathクラス(System名前空間)
使用ライブラリ:Int16構造体(System名前空間)
使用ライブラリ:Int32構造体(System名前空間)
使用ライブラリ:Int64構造体(System名前空間)
使用ライブラリ:Decimal構造体(System名前空間)
使用ライブラリ:Single構造体(System名前空間)
使用ライブラリ:Double構造体(System名前空間)
関連TIPS:数値のデータ型を明示的に指定するには?

この記事と関連性の高い別の.NET TIPS
数値のデータ型を明示的に指定するには?
文字列を数値に変換するには?
レジストリの値のデータ型を明示的に識別・設定するには?
レジストリの値のデータ型を判別するには?
文字列を数値に変換するには?(TryParse編)
このリストは、(株)デジタルアドバンテージが開発した
自動関連記事探索システム Jigsaw(ジグソー) により自動抽出したものです。
generated by

「.NET TIPS」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

Insider.NET 記事ランキング

本日 月間
ソリューションFLASH