【问题标题】:multiple dice rolls, multiple results多掷骰子,多结果
【发布时间】:2017-12-25 08:45:13
【问题描述】:

我正在为我的网站构建一个小型应用程序,您可以在其中输入掷骰子来决定一个动作是成功还是你击中了敌人(成功率稍后会添加) 现在虽然我只需要 javascript 来单独显示骰子结果,它现在显示完整的数字。

这是输出掷骰子的脚本。 我将于 2018 年 1 月 15 日开始学习编程。我希望能够变得更好。因此,我感谢您提供的任何帮助。

<script>
function rollDie(sides) {
    if(!sides) sides = 6;
    with(Math) return 1 + floor(random() * sides);
}

function rollDice(number, sides) {
    var total = 0;
    while(number-- > 0) total += rollDie(sides);
    return total;
}
</script>

根据自己的初步假设,它与最终的“总数”有关,但用什么代替呢?

【问题讨论】:

  • 将数字放入数组中,然后执行total.push(rollDie(sides))
  • with is not recommended。不要使用它!
  • 有什么选择?
  • 只是在做 Math.floor() 等

标签: javascript dice


【解决方案1】:

function rollDie(sides) {
    if(!sides) sides = 6;
    return 1 + Math.floor(Math.random() * sides);
}

function rollDice(number, sides) {
    var total = [];
    while(number-- > 0) total.push(rollDie(sides));
    return total;
}

console.log(rollDice(3, 6))

这就是你要找的。不用对掷骰子求和,只需将它们放入一个数组并返回该数组即可。

【讨论】:

    猜你喜欢
    • 2021-04-06
    • 2020-10-15
    • 1970-01-01
    • 1970-01-01
    • 2018-09-08
    • 1970-01-01
    • 2018-10-19
    • 1970-01-01
    • 2012-02-29
    相关资源
    最近更新 更多