let score = 0;
let total = 0;
let victoryPoints = 100;
let misses = 0;
while (total < victoryPoints) {
if (misses >= 3) {
break;
}
score = keks.getScore();
if (score < 0) {
console.log(‘Промах!’);
misses++;
} else {
total += score;
console.log('Результат броска: ’ + score);
}
}
if (total >= victoryPoints) {
console.log('Победа! Очков: ’ + total + ', промахов: ’ + misses);
} else {
console.log('Проигрыш. Очков: ’ + total + ', промахов: ’ + misses);
}
Здравствуйте! А почему проверку на общее количество промахов надо делать именно в самом начале цикла, ещё до выполнения броска и получения его результата? Нельзя ли ее выполнять в конце цикла? Ведь перед началом работы цикла у нас misses = 0, и оно не может быть сразу > 3?. То есть, цикл должен выполниться не менее 1 раза, чтобы получить значение > 3.
Так работа программы получилась бы даже короче - т.к. если проверка в конце цикла даст значение misses > 3, то цикл сразу остановится и не будет делать проверку total < victoryPoints.