/******************************************************************** * File: CST116-Ch8-Debugging.cpp * Lloyd Crawford, CST 116 02, CH 8 Debugging, IDE, Simple Program, Github * General Instructions: Complete each step before proceeding to the * next. * * Debugging Exercise 1 * * 1) Insert a breakpoint on the lines indicated in the code. * 2) Run to Breakpoint 1. * 3) Place a watch on i. * 4) Execute the while statement by doing a "Step Into". * 5) The execution continues to the cout statement as expected. * 6) Step over the cout statement. * 7) Why didn't the flow of the program return back to the while * statement? * 8) Fix this problem by removing the ; after the while statement. * 9) Stop debugging and repeat Steps 2 – 5 to verify the correction * worked. * 10) Stop debugging. * * Debugging Exercise 2 * * 1) Run to Breakpoint 1. * 2) Step into the while loop. * 3) Why did the cout not execute? * 4) Check the value of i, now check the condition, does the * condition evaluate to true? * 5) Change the "< 0" to a "< 10". * 6) Stop debugging and repeat Steps 1 – 4 to verify the correction * worked. * 7) Stop debugging. * * Debugging Exercise 3 * * 1) Run the program without debugging. * 2) What is happening now is an infinite loop. * 3) End your program by holding down the Ctrl key and pressing C. * 4) Fix the problem by adding a "++" after the i in the cout * statement. * 5) Run the program to Breakpoint 2 and verify that the output * displayed on the screen is 0 – 9. * * Debugging Exercise 4 * * 1) Run to Breakpoint 2. * 2) Add a watch to the variable count. * 3) Verify that the contents of count is garbage. * 4) Step into the loop. * 5) What is the value stored in count now? 0 * 6) Where was 10 assigned to count? * 7) Fix the problem and re-run to verify. ********************************************************************/ #include using std::cout; using std::endl; int main() { int i = 0; int count; // Breakpoint 1 // Put a breakpoint on the following line while (i < 10) cout << i++ << endl; // Breakpoint 2 // Put a breakpoint on the following line for (count = 0; count < 10; count++) cout << count << endl; return 0; } // For part 1 I inserted the breakpoints into the program. Then started diagnostics. What was found was // line 65 while (i < 0);, the semicolen kept the program from looping back to the while statement after cout. //Removing the semicolen fixed the issue. For Part 2 I found that the Cout statement wouldnt execute as it had no value to execute. // By changing the 0 to a 10 it would execute a loop until it ran to that number. // Part 3 Showed after the current fixes that the program would run an infinite loop. By placing ++ after i on line 66 // it fixed the issue and the code would run from 0 - 10. Not like the instructions said, but a step there. // For part 4 I removed the end semicolen on line 70 causing the count to properly be 0-9. I feel the issues are resolved.