aboutsummaryrefslogtreecommitdiff
path: root/CST116-Ch5-Debugging/CST116-Ch5-Debugging.cpp
blob: 7b90e601497d7b4d71c83836297606243e40cee1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
/********************************************************************
* File: CST116-lab0-debugging-joetraver30.cpp
*
* General Instructions: Complete each step before proceeding to the
* next.
*
* Debugging Exercise 1
*
* 1) On the lines indicated in the code below, insert a breakpoint.
* 2) With the program not in debugging mode, start debugging by
*    using the "Step Into" tool.
* 3) Click on the Watch1 tab.
* 4) With the cursor in the Name column type money and press enter.
*    This adds a programmer defined watch on the variable money.
* 5) Step Into until you reach the first cout statement. With
*    the current line being that cout statement, Step Into again.
* 6) What happened? Where are we now? What is all of this nasty
*    looking code?
* 
*   -Background code routine that will execute the display-
* 
* 7) Remember, stepping into a predefined routine takes you to the
*    code for that routine. If the debugger can't find the code it
*    will show the assembly code for that routine.
* 8) How do we get out of this mess? Use the "Step Out" tool.
* 9) In Visual Studio you will be taken back to the same cout
*    statement. Use the Step Over tool to take you to the next
*    line.
* 10) Step over the next cout statement. Now look at the console
*     window. What was printed?
* 11) Select Stop Debugging either from the Debug menu or from your
*     toolbar.
*
* Debugging Exercise 2
*
* 1) With the program stopped, run to Breakpoint 1 by selecting
*    the Start Debugging menu option, toolbar icon or press F5.
* 2) Step over the cout.
* 3) Step over the cin. Notice that you can now enter a value.
* 4) Enter the value .1 and press enter.
* 5) Notice that the current line of execution is now at the
*    calculation.
* 6) Look at your watch. What is the value of money?
* 7) Hover your mouse pointer over raise. What is its value?
* 8) Step over the calculation. Notice the watch on money is now
*    red. This designates that the variable just changed its value.
* 9) What happened to our money? I thought a raise was supposed
*    to increase our money? Stop debugging and fix the calculation.
*
* Debugging Exercise 3
*
* 1) Choose Disable All Breakpoints from the Debug menu.
* 2) With the cursor on the calculation, Run to Cursor. Remember
*    that the Run to Cursor tool can be accessed by right clicking
*    in the code window and choosing the correct menu option.
* 3) Step over the calculation and verify that this time
*    you end up with more money than before the raise.
* 4) Stop debugging. Now run the entire program by choosing the menu
*    option Start Without Debugging.
*
********************************************************************/

#include <iostream>
#include <iomanip>
using std::cout;
using std::cin;
using std::endl;

int main()
{
    cout << "Joe Traver" << endl;
    cout << "CST 116" << endl;
    cout << "Github ID - joetraver30" << endl;

    float money = 123.45F;
    float raise;

    cout << "You have $";
    cout << money << endl;

    // Breakpoint 1
    // Put a breakpoint on the following line
    cout << "Enter percent raise: ";
    cin >> raise;

    raise = raise * .01;

    money = money * (1 + raise);

    cout << "After your raise you have $";
    cout << money << endl;

    return 0;
}