Page 90 - Браун Э. - Изучаем JavaScript. Руководство по созданию современных веб-сайтов - 2017
P. 90
i
Ц и к n do . . . wh l e
Когда Т о мас е вытаскивает случайно 7 пенсов, н распределяет наличность меж
о
н
ду полями случайно. У него и для этого есть ритуал: он держит монеты в правой
руке, а левой выбирает их случайное количество (от только одной до всех) и ставит
на случайное поле (иногда на то же поле несколько раз). Теперь мы можем моди
фицировать свою блок-схему так, чтобы отразить это случайное распределение всех
ставок, как показано на рис. 4.4.
Цикл do-while
Да
bets[face] = remaining =
bets[face] + bet remaining - bet
Рис. 4.4. Модель игры "Корона и Якорь": блок-схема распределения ставок
Обратите внимание, насколько это отличается от цикла while: решение принимается
в конце, а не в начале. Цикл do . . . while подходит тогда, когда вы знаете, что тело цикла
необходимо выполнить по к р айней мере один раз (если условие цикла while изначально
ложно, он не будет выполнен даже однажды). Вот как это выглядит в JavaScript.
let remaining = totalBet ;
do {
let bet = rand ( l , remaining) ;
let face = randFace ( ) ;
t
be s [ f ace ] = bets [ face ] + be ;
t
remaining = remaining - be ;
t
while ( remaining > 0 } ;
Учебник для новичков в управлении потоком 89

