# include # include using namespace std; int main ( ) // // PRECEDENCE.CPP // This program demonstrates how the evaluation of a formula // is done using precedence of operators, and how that precedence // can be changed by using parentheses. { int a = 10; int b = 20; int c = 30; int d = 40; int m, n, o, p, q; cout << "\n"; cout << "PRECEDENCE:\n"; cout << " How many ways can we interpret a formula?\n"; cout << "\n"; cout << " Original formula is a + b * c + d / 2\n"; cout << "\n"; m = a + b * c + d / 2; cout << " a + b * c + d / 2 = " << m << "\n"; cout << "\n"; cout << " Adding some parentheses yields:\n"; cout << "\n"; n = ( ( a + b * c ) + d ) / 2; cout << "( ( a + b * c ) + d ) / 2 = " << n << "\n"; o = ( a + b ) * ( c + d ) / 2; cout << " ( a + b ) * ( c + d ) / 2 = " << o << "\n"; p = ( a + b * ( c + d ) ) / 2; cout << " ( a + b * ( c + d ) ) / 2 = " << p << "\n"; cout << "\n"; cout << " How the formula is actually interpreted:\n"; cout << "\n"; q = a + ( b * c ) + ( d / 2 ); cout << " a + ( b * c ) + ( d / 2 ) = " << q << "\n"; return 0; }