折扣优惠券Project-.nextGaussian()

时间:2011-12-08 07:13:07

标签: java random statistics

我正在为我的计算机科学课程完成一项任务,在这项任务中,我们必须生成价值在1000美元到5000美元之间的随机优惠券。我已经完成了大部分工作,但我们的老师希望我们使用.nextGaussian使其更有可能发出1000美元的优惠券而不是5000美元的优惠券。关于我将如何处理的任何建议?我已经抬头了.nextGaussian但我似乎无法让它工作。任何建议或帮助将不胜感激。我们使用Bluej(java是编程语言)作为环境,如果这很重要的话。

1 个答案:

答案 0 :(得分:0)

nextGaussian的99%结果将介于-3和3之间。所以你可能想要

  1. 取绝对值。
  2. 乘以大数,大约5000/3。
  3. 您将在0到1000之间获得大量结果,但不确定如何处理这些结果。可能会忽略它们然后再去?希望这会让你开始。请注意,某些结果将是> 5000,绝对会忽略这些结果并重新开始。

    编辑添加

    昨晚我回答后大约一分钟,意识到了一个更好的方法。

    1. 取绝对值。您现在的数字范围为0 ...无穷大,但主要在0 ... 3
    2. 范围内
    3. 乘以4000/3。数字现在主要在0 ... 4000
    4. 的范围内
    5. 添加1000.数字现在主要在1000 ... 5000范围内。
    6. 在罕见的情况下,数字> 5000,请再试一次。