토마스가 우연히 7펜스를 꺼내지 않았다면 무작위로 사각형에 돈을 걸어야 합니다.
토마스는 판돈을 나눌 때도 범상치 않습니다.
오른손에 동전을 쥐고 왼손으로 그 동전을 집지만, 세지는 않습니다.
잡히는 대로 집어서 아무 사각형에나 걸기 때문에, 때로는 동전 한 개를 걸 때도 있고 오른손에 쥔 동전 전부를 걸 때도 있습니다.
같은 사각형에 여러 번 걸 때도 있습니다.
무작위로 판돈을 나누는 행동을 순서도에 반영하면 [그림 4-4]와 같습니다.
while 루프와의 차이를 보십시오.
시작하면서 조건을 검사하지 않고 마지막에 검사합니다.
do… while 루프는 루프 바디를 최소 한 번은 실행하려 할 때 사용합니다.
while 루프의 조건이 거짓 같은 값으로 시작하면 루프 바디는 한 번도 실행되지 않습니다.
이제 자바스크립트를 봅시다.
let remaining = totalBet;
do {
let bet = rand(1, remianing);
let face = randFace();
bets[face] = bets[face] + bat;
remaining = remaining - bet;
} while(remaining > 0);