Показать сообщение отдельно
  #16 (permalink)  
Старый 14.09.2018, 13:20
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от AlexanderFilatov
И вот на этом примере я "завис"!
Ну так ваш код с кодом этой функции нельзя сравнивать, вы просто воткнули увиденное себе без всякой пользы. А в функции присвоение переменной a значения переменной b используется в следующих итерациях, а также является возвращаемым значением. Просто выведите в консоль:

function nod(a, b) {
    while (b !== 0) {
        console.log('before '+a);
        b = a % (a = b);
        console.log('after '+a);
    }
    console.log('return '+a);
    return a;
}
nod(21, 14);


PS. Кстати, кроме приоритета операторы обладают еще и ассоциативностью.

Последний раз редактировалось laimas, 14.09.2018 в 13:30.
Ответить с цитированием