1: //eval_expressions.cpp
2: //Illustrates arithmetic expression evaluation, and
3: //arithmetic operator precedence rules.
5: #include <iostream>
6: using namespace std;
8: int main()
9: {
10: cout << "\nThis program displays the results of "
11: "evaluating several arithmetic expressions.\n\n";
13: cout << "This first group involves only integer values:\n"
14: << "1 + 2 * 5 - 3 * 5 --> " << 1 + 2 * 5 - 3 * 5 << "\t"
15: << "(1 + 2) * 5 - (3 * 5) --> " << (1 + 2) * 5 - (3 * 5) << "\n"
16: << "13 / 2 * 3 --> " << 13 / 2 * 3 << "\t"
17: << "12 + 3 / 4 * 2 --> " << 12 + 3 / 4 * 2 << "\n"
18: << "238 % 10 + 3 % 7 --> " << 238 % 10 + 3 % 7 << "\t"
19: << "5 * 2 / 4 * 2 --> " << 5 * 2 / 4 * 2 << "\n"
20: << "5 * 2 / (4 * 2) --> " << 5 * 2 / (4 * 2) << "\t"
21: << "5 + 2 / (4 * 2) --> " << 5 + 2 / (4 * 2) << "\n"
22: << "10 % 3 - 4 / 2 --> " << 10 % 3 - 4 / 2 << "\n\n";
24: cout << "This second group involves only floating point values:"
25: << "\n2.61 + 13.4 - 6.2 / 0.2 --> " << 2.61 + 13.4 - 6.2 / 0.2
26: << "\n(-5.3 + 1.1) * 5.0 --> " << (-5.3 + 1.1) * 5.0
27: << "\n\n";
29: cout << "This third group involves both "
30: << "integer and floating point values:\n"
31: << "3.1 + 2 --> " << 3.1 + 2 << "\t\t"
32: << "5 - 3.6 --> " << 5 - 3.6 << "\n"
33: << "3.14 * 4 --> " << 3.14 * 4 << "\t"
34: << "0.123 / 3 --> " << 0.123 / 3 << "\n"
35: << "3.6 + 6 / 10 --> " << 3.6 + 6 / 10 << "\t\t"
36: << "-1.7 + 10 / 4 --> " << -1.7 + 10 / 4 << "\n"
37: << "-1.7 + 10 / 4.0 --> " << -1.7 + 10 / 4.0 << "\t\t"
38: << "1/3 + 2/3 --> " << 1/3 + 2/3 << "\n"
39: << "1.0/3 + 2/3 --> " << 1.0/3 + 2/3 << "\t"
40: << "1.0/3 + 2/3.0 --> " << 1.0/3 + 2/3.0 << "\n"
41: << endl;
42: }