Ассоциативная операция может относиться к любому из следующего:
1. В математике ассоциативная операция - это вычисление, которое дает один и тот же результат независимо от способа группировки чисел. Сложение и умножение являются ассоциативными, а вычитание и деление - нет. Например, взгляните на расчеты ниже.
ассоциативный
2+ (2 + 5) = 9
(2 + 2) +5 = 9
Не ассоциативный
4- (2-1) = 3
(4-2) -1 = 1
В дополнительных примерах не имеет значения порядок добавления чисел. Независимо от того, добавляется ли сначала 2 + 5 и затем добавляется 2, или сначала добавляется 2 + 2, а затем добавляется 5, результат равен 9 и делает его ассоциативным. С другой стороны, вычитание не является ассоциативным, так как изменение группировки меняет результат.
2. В программировании ассоциативная операция происходит, когда нет группировки, где операторы имеют одинаковый приоритет или будут оцениваться либо слева направо, либо наоборот. Если ни один из этих случаев не имеет места в языке программирования, то это будет либо специальный оператор, либо в результате выдается синтаксическая ошибка.
Например, сложение и вычитание имеют одинаковый приоритет и являются левоассоциативными. Таким образом, если в скобках нет группировки, операторы оцениваются слева направо. Например, 4-3 + 1 равно 2, так как сначала вычисляется 4-3, а результат добавляется к 1. Чтобы изменить этот порядок, программист должен сгруппировать числа для вычисления выражения по желанию. Если программист хочет сначала выполнить вычисления 3 + 1, его можно сгруппировать, используя скобки, как показано ниже.
4- (3 + 1)
Это заставляет 3 + 1 вычисляться первым, а результат (4) вычитается из 4, давая ноль.
В большинстве языков операторы сложения, вычитания, умножения и деления ассоциативны слева, а операторы присваивания, условного выражения и возведения в степень - ассоциативно справа.
Оператор, Условия программирования