JavaScript

コイン分配問題 JavaScriptでやってみた

コイン分配問題とは

6人が均等にコインを所持し、2つのサイコロをふります。
サイコロ1の出目の人はコインを差し出し、サイコロ2の出目の人はそのコインを取得する。
これを繰り返すと、貧富の差が出るのだそうな。
https://scrapbox.io/prog-exercises/コイン分配問題

誰かのコインがゼロになるまで続けて、最終結果をコンソールに出力する、というのをjsでやってみました。

ソースコード

coint.js
const money = 100;//所持コイン数
let member = {
              "member_1" : money,
              "member_2" : money,
              "member_3" : money,
              "member_4" : money,
              "member_5" : money,
              "member_6" : money
            };
let endFlug = false;//ループ抜けるためのフラグ
const max = 6;//サイコロの出目max値
const min = 1;//サイコロの出目min値

//誰かが所持金ゼロになるまで繰り返し
while(endFlug === false){
    var deme1 = Math.floor(Math.random() * (max + 1 - min)) + min;//サイコロ1の出目
    var deme2 = Math.floor(Math.random() * (max + 1 - min)) + min;//サイコロ2の出目
    member["member_"+ deme1]--;//サイコロ1の出目の人はコインを差し出す
    member["member_"+ deme2]++;//サイコロ2の出目の人はそのコインをもらう

    for (let item in member){//誰かがゼロになった時の判定
      if (member[item] === 0) {
        console.log(item);//ゼロになった人を表示
        endFlug = true;//抜けるためのフラグをtrueに
      }
    }
}
console.log(member);//結果発表

以上です