1. Проведите вычисления для выражения, представленного в префиксной форме: * + 57-63 2. Проведите
2. Проведите вычисления для выражения, представленного в префиксной форме: * — +a2bc при условии, что a = 6, b = 4 и c = 2.
3. Преобразуйте выражение c*(a+b) в постфиксную форму (без потери смысла).
Объяснение: Вычисления в префиксной форме осуществляются согласно следующим правилам. Если символ является оператором, то необходимо применить этот оператор к двум операндам, следующим непосредственно за оператором. Если символ является числом, он считается операндом и помещается на верхушку стека. В данном случае, символ ‘*’ является оператором, значит, следующими за ним идут операнды: ‘+’, ’57’, ‘-‘, ’63’. Применив оператор ‘*’ к операндам ‘+’, ’57’, ‘-‘, ’63’, получим результат: (+57) * (-63) = -3789.
Пример использования: В данном случае, для вычисления первого выражения в префиксной форме, необходимо применить оператор ‘*’ к операндам ‘+’, ’57’, ‘-‘, ’63’. Поэтому результатом будет -3789.
Совет: Чтобы вам было легче понять префиксную форму, предлагаю представить выражение в инфиксной форме, где оператор располагается между операндами. В первом выражении это будет так: (57 + (-63)). Отсюда видно, что оператор ‘*’ умножает результат сложения 57 и -63.
Упражнение: Вычислите следующее выражение в префиксной форме: * + 39 24.