Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save EntaltsevSN/75ebf110f14436922adfbb0c1c74455f to your computer and use it in GitHub Desktop.

Select an option

Save EntaltsevSN/75ebf110f14436922adfbb0c1c74455f to your computer and use it in GitHub Desktop.
Подсчёт рукопожатий с постепенным увеличением количества участников
// Объявляем динамические переменные
let people = 0,
handshakes = 0,
log = [];
// Объявляем постоянные переменные
const targetPeople = 10;
const completeHandshaking = () => {
const report = log.map(({ people, handshakes }) =>
`С приходом ${people} человека стало ${handshakes} рукопожатий\n`
).join('')
const result = `Всего с приходом ${people} человек произошло ${handshakes} рукопожатий`
alert(`${report} ${result}`)
}
// Объявляем подсчет рукопожатий
const countAHandshakes = () => {
// Проводим цикл обновления рукопожатий с приходом человека
while (people < targetPeople) {
// Приглашаем нового человека
people++;
// Досчитывать рукопожатия, если больше 1 человека в комнате
if(people > 1) {
handshakes += people - 1;
// Записываем, сколько рукопожатий стало с приходом человека
log.push({ people, handshakes })
}
}
completeHandshaking();
}
countAHandshakes();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment