ちょっと魔術っぽいコードになる。
rollDice = n => _ => Math.floor(Math.random() * n) + 1; average = (f, n) => n == 1 ? f() : (average(f, n-1) * (n-1) + f()) / n; console.log( average(rollDice(6), 1000) ); // →だいたい3.5くらい
ちょっと魔術っぽいコードになる。
rollDice = n => _ => Math.floor(Math.random() * n) + 1; average = (f, n) => n == 1 ? f() : (average(f, n-1) * (n-1) + f()) / n; console.log( average(rollDice(6), 1000) ); // →だいたい3.5くらい