Help us understand the problem. What is going on with this article?

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

More than 1 year has passed since last update.

コイン分配問題とは

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);//結果発表

以上です

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away