• 締切済み

乱数について

初心者なので、面倒ですが出来れば分かりやすく教えてください。 「-1.0以上1.0未満の実数値を生成して表示するプログラムを作成せよ。」 という問題の解答が下記だったのですが、何で-1.0が含まれているんですか? よく分かりません。 import java.util.Random; class SumDouble { public static void main(String[] args) { Random rand = new Random(); double tmp = rand.nextDouble(); //0.0以上1.0未満の実数値をランダム生成 double tmp2 = -1.0*tmp; //-1.0以上0未満の実数値をランダム生成 double sum =tmp+tmp2; System.out.println("-1.0以上1.0未満の実数値は" + sum + "です。"); } }

みんなの回答

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

え?これって常に0じゃない? tmp2=-tmp sum=tmp+tmp2 より sum=tmp-tmp=0 > double tmp2 = -1.0*tmp; //-1.0以上0未満の実数値をランダム生成 ってあるけど、乱数生成してません。単にtmpの値の正負をひっくりかえしただけです。

sayu0211
質問者

補足

本当ですね。 -1.0どころの話じゃなかった。

関連するQ&A

専門家に質問してみよう