**変数 [#z8a915d3]
 RIGHT:[[「ヘルプ補足」諸注意>../「ヘルプ補足」諸注意]]	
 #contents
 
 
 ***システム変数「資金」 [#oe42c34d]
 //関連項目:
 //[[Moneyコマンド>ヘルプ補足/その他コマンド#s15017bb]]
 //現在、Moneyコマンドの見出し下にはコンテンツがないので、コメントアウトしてます。
 &color(red){◆保証未確認動作'''(確認ver2.2.27)'''};
 最小値は ゼロ です。システム変数「資金」への代入や Money コマンドによってそれ以下にしようとしても ゼロ になります。
 最大値は 999,999,999 です(&color(red){◆仕様補足説明'''(確認ver2.2.27)'''};)。システム変数「資金」への代入や Money コマンドによってそれ以上にしようとしてもこの値になります。また、2,147,483,648 以上の値にしようとしたら、
 (1) Money コマンドのパラメーターにこの値以上を入れた場合は、コマンドが無視され
 (2) 「資金」への代入や、Money コマンドによる増加の結果この値以上になるなる場合は、エラー「イベントデータが不正です」になります。
 
 ***数値の表記方法 [#g539cdfd]
 &color(red){◆保証未確認動作'''(確認ver2.2.25)'''};
 関連項目:
 [[Format関数>ヘルプ補足/文字列処理関数#de98d77f]]
 #hr
 
 半角数字と小数点よりなる「ふつうの」表記方法のほかに、以下が可能です。
 ・ 「,」を交えた表記  例) i = 1,234,567
 ・ 浮動小数点表記  例) i = 1.234567E6('E'は小文字'e'でも可)
 
  標準的な書式ではありませんが、以下のような不規則な表記も可能です。
 ・ i = 12,3456,7
 ・ i = 1234.567E3
 ・ i = 12345670E-1
  これら5つの例はすべて、i = 1234567 の場合と同じ数値が入ります。代入後のデータは「,」や「E3」がついた形ではなく、SRC の標準的な数値データの形式(「1234567」)で保持されます。
 (もちろん、
 i = "1,234,567" や、
 i = "1.234567E6" 
 と「"」でくくって代入した場合は文字列として処理され、「,」「E3」は保持されます)
 
 数値の冒頭に「¥」を加えた文字列も数値として認められます。この文字列を変数に代入すると、変数は「¥1234567」など「¥」がついたデータとして保持されますが、これを数値として演算した結果のデータでは「¥」が消えます。
  例:
  i = \1234
  Confirm "$(i) $(i + 1)"
  # "\1234 1235" と表示される
 
 あまりおすすめできませんが、
 ・ i = 1234
 のように、全角数字列を代入したデータも数値として認められます。代入されたデータは全角のまま保持されますが、数値演算をした結果のデータでは半角数字になります。
  例:
  i = 1234
  Confirm "$(i) $(i + 1)"
  # "1234 1235" と表示される
 
 #br
  IsNumeric関数も、上記のさまざまな表記を数値として判別します。
 
 
 *** 数値変数の有効範囲と精度 [#q098686c]
 &color(red){◆保証未確認動作'''(確認ver2.2.25)'''};
 数値の有効桁数は、15桁ちょうどです。これを超える桁は、''四捨五入''されます。(15桁というのは有効精度であって数の大きさではありません)
 // 実測した結果であって、ソースコード解析はしていません。
  例: i = 1234567890123456789 と代入すると、実際に i に入る値は、上から15桁をとって、
          1234567890123460000 になります。
 
 ただしこれは、単純な変数表示などの場合です。実際には、計算の途中で一度でも制限に引っかかるとそこで丸められます。また、関数やコマンドでは、VBの長整数型データ(-2147483648〜2147483647の整数値)などを使っている場合もあります。この場合もその時点で丸められます。なかにはRandom関数など、VBの短精度浮動小数点型(有効桁6桁強)を参照するSRC関数もあります。
 
 $()によって正しく表示可能な数値の絶対値の大きさの範囲は、おおむね、最大で308桁、最小で小数点以下71桁までです。
 // 以上、実測した結果であって、ソースコード解析はしていません。
 
 以上のことは、数値データに対してのみあてはまります。
  i = "1234567890123456789" と代入されたデータは、文字列として扱われそのまま代入されます。しかし、
  i = i + 1 など、この変数 i を数値計算すると、その時点で数値として扱われ、丸められます。
 
 
 ***時間変数 [#e4ce53cd]
 &color(red){◆保証未確認動作'''(確認ver2.2.25)'''};
 関連項目:
 [[Format関数>ヘルプ補足/文字列処理関数#de98d77f]]
 #hr
 システム変数Now で取得した変数だけでなく、これと同じ書式の変数は時間変数として取り扱うことができます。合致する書式は
  2007/7/2 3:21:6
  2007/07/02 03:21:06
 のような文字列です。
 この書式の変数は、時間データ処理関数(GetTime関数を除く)で処理できます。Format関数の日付/時刻書式も有効です。
 
  2007/7/2 のように日付だけのデータや
  3:21:6 のように時刻だけのデータも限定的には有効です。
 ただし、日付だけのデータを時刻関係の関数の引数にするとゼロが返り、Format関数の時刻書式を適用すると不測の結果になります。
 時刻だけのデータを日付関係の関数の引数にしたり、Format関数の日付書式を適用したりすると、1899/12/31 などの日付が返ってきます。
 
 #br
 ----
 **コメント [#ida5d9a7]
 - 「配列の中の変数」はどうなるんでしょうか -- [[早苗☆]] &new{2010-02-26 (金) 07:31:07};
 - えっと、どういう性質についての質問でしょうか? それから、配列のインデックスのことでしょうか、それとも配列の値のことでしょうか? -- [[あかんべえ]] &new{2010-02-26 (金) 08:37:35};
 - 「味方君の変数が不正です」 とありましたがどのように修正したら良いでしょうか? -- [[♪ディアボロ♪]] &new{2011-07-26 (火) 03:18:51};
 - ここはシナリオ作成の質問をする所ではありません。質問掲示板を使ってください。その際には質問とともにイベントファイルの内容も合わせて掲示するのが良いと思います。 --  &new{2011-07-26 (火) 22:42:36};
 
 #comment_nospam