定数を宣言する [VB]

Visual Basic 文法[2015 2013 2012]

Const を使えば修正は1箇所

プログラム内で使う値が一定で変わらない場合には、Const ステートメントを使って、定数を宣言することができます。

プログラム内で使う値が一定で変わることが無い場合には、一度定数を宣言して、値を設定(初期化)すると、必要なところで何度でも定数名を使ってプログラムできます。分かりやすい名前を付ければ、分かりやすいプログラムを書くことができます。

Const を使えば、定数の値を変更するとき、1箇所の修正で済むので、修正漏れを防げます。

定数名はすべて大文字

Constステートメントを使って、定数の宣言と値を設定します。宣言はプログラムの先頭にするのが普通です。また、定数名はすべて大文字で使うのが一般的です。

  Const ZEIRITSU As Double = 0.08

税込価格を計算する場合の例

  200 * (1 + ZEIRITSU)

Const ステートメントを Sub Main()の外側で宣言することもできます。たとえば、次のように宣言すると、Sub Main()の中でも、関数の中でも使うことができます。

できるだけ広い範囲で使用できるように宣言すれば、何箇所もConst を書かなくてすみます。

Module Module1

  ' 定数の宣言
  Const ZEIRITSU As Double = 0.08

  Sub Main()
      ............
  End Sub

  '*************************************
  ' 機能:○○する関数
  '******1*********2*********3*********4
  Public Function Fx() As Double
     .................
  End Function

End Module

もちろん Sub Main()の中でも、宣言できますが、この場合の有効範囲は、Sub Main()の中だけになります。

定数を使ったサンプル

消費税率に定数を使ったサンプルです。キーボードから複数の商品の価格を入力すると、商品ごとの税込価格と、税込合計額を計算するプログラムを作成します。

税込価格を計算する関数の消費税率にConst ステートメントを使います。

ソースリストの枠内をクリックすると全選択できます。

Module Module1

  ' 定数の宣言
  Const ZEIRITSU As Double = 0.08

  Sub Main()
      ' 変数の宣言
      Dim inStr As String
      Dim nedan As Integer = 0
      Dim zeikomi As Double = 0
      Dim goukei As Integer = 0

      Console.WriteLine("[ 税込金額を計算する ]")
      Console.Write("消費税率は")
      Console.Write(ZEIRITSU * 100)  ' ★ここで使用
      Console.WriteLine("%です")

      ' 商品価格を入力して、税込価格を求める
      Do
        Console.WriteLine()    ' 改行
        Console.WriteLine("* 価格を入力して下さい *")
        ' キーボードから入力
        inStr = Console.ReadLine()
        ' 入力した文字列を整数に変換
        nedan = Integer.Parse(inStr)
        ' 入力値が0以下なら Do Loopを抜ける
         If nedan > 0 Then
            ' 税込価格を関数を使って計算
            zeikomi = CalucZeikomi(nedan)
            ' 税込合計額を計算
            goukei = goukei + zeikomi
        Else
            Console.WriteLine("入力終了")
            Exit Do
        End If
      Loop

      ' 税込合計金額を表示
      Console.WriteLine()    ' 改行
      Console.WriteLine("--------------------")
      Console.Write("税込合計金額は、")
      Console.Write(goukei)
      Console.WriteLine("円です")
  End Sub

  '***********************************************
  ' 機能:税込価格を計算する関数
  ' 引数:商品価格
  ' 戻値:税込価格
  '******1*********2*********3*********4*********5
  Public Function CalucZeikomi(ByVal kakaku As Integer) As Double

      Dim retZeikomi As Double = 0    'リターン値

      ' 税込価格を定数を使って計算
      retZeikomi = kakaku * (1 + ZEIRITSU)    ' ★ここで使用
      ' ◆戻値を設定してリターン
      Return retZeikomi

  End Function

End Module

注意:消費税率は今後何度も変更されます。実務ではデータベースを使って、プログラムを変更しないで済むように作成します。

[広告]
[広告]