From 9da7e530addf9a5f99c836bb4373a973a4ed27e2 Mon Sep 17 00:00:00 2001 From: Lloyd Crawford Date: Wed, 5 Oct 2022 15:43:39 -0700 Subject: Completed ch 5 debug --- CST116-Lab0-Crawford/CST116-CH5 DEbug-Crawford.txt | 17 +++ .../CST116-CH5 Debug-Pseudo code-Crawford.txt | 97 ++++++++++++++ CST116-Lab0-Crawford/Ch 5 Debugging Project.cpp | 97 ++++++++++++++ CST116-Lab0-Crawford/Ch 5 Debugging Project.sln | 31 +++++ .../Ch 5 Debugging Project.vcxproj | 148 +++++++++++++++++++++ .../Ch 5 Debugging Project.vcxproj.filters | 22 +++ .../~AutoRecover.Ch 5 Debugging Project.vcxproj | 148 +++++++++++++++++++++ 7 files changed, 560 insertions(+) create mode 100644 CST116-Lab0-Crawford/CST116-CH5 DEbug-Crawford.txt create mode 100644 CST116-Lab0-Crawford/CST116-CH5 Debug-Pseudo code-Crawford.txt create mode 100644 CST116-Lab0-Crawford/Ch 5 Debugging Project.cpp create mode 100644 CST116-Lab0-Crawford/Ch 5 Debugging Project.sln create mode 100644 CST116-Lab0-Crawford/Ch 5 Debugging Project.vcxproj create mode 100644 CST116-Lab0-Crawford/Ch 5 Debugging Project.vcxproj.filters create mode 100644 CST116-Lab0-Crawford/~AutoRecover.Ch 5 Debugging Project.vcxproj (limited to 'CST116-Lab0-Crawford') diff --git a/CST116-Lab0-Crawford/CST116-CH5 DEbug-Crawford.txt b/CST116-Lab0-Crawford/CST116-CH5 DEbug-Crawford.txt new file mode 100644 index 0000000..b22d241 --- /dev/null +++ b/CST116-Lab0-Crawford/CST116-CH5 DEbug-Crawford.txt @@ -0,0 +1,17 @@ +You have $123.45 +Enter percent raise: .1 +After your raise you have $123.55 + +C:\Users\Lloyd Crawford\source\repos\cst116-lab0-debugging-19-Ruin\CST116-Lab0-Crawford\x64\Debug\CST116-Debugging-Crawford.exe (process 8020) exited with code 0. +To automatically close the console when debugging stops, enable Tools->Options->Debugging->Automatically close the console when debugging stops. +Press any key to close this window . . . +This is the final code before fixing the error. + +You have $123.45 +Enter percent raise: .1 +After your raise you have $135.795 + +C:\Users\Lloyd Crawford\source\repos\cst116-lab0-debugging-19-Ruin\CST116-Lab0-Crawford\x64\Debug\CST116-Debugging-Crawford.exe (process 22076) exited with code 0. +To automatically close the console when debugging stops, enable Tools->Options->Debugging->Automatically close the console when debugging stops. +Press any key to close this window . . . +This is the outcome after the coding has been fixed diff --git a/CST116-Lab0-Crawford/CST116-CH5 Debug-Pseudo code-Crawford.txt b/CST116-Lab0-Crawford/CST116-CH5 Debug-Pseudo code-Crawford.txt new file mode 100644 index 0000000..f175815 --- /dev/null +++ b/CST116-Lab0-Crawford/CST116-CH5 Debug-Pseudo code-Crawford.txt @@ -0,0 +1,97 @@ +/******************************************************************** +* File: Chap_5_Debugging.cpp +* Debugging +* Working with Github + + Make simple changes to a file + +* General Instructions: Complete each step before proceeding to the +* next. +* +* Lloyd Crawford, CST 116 02, Lab #0, IDE, SImple Program, Github + +* 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? +* 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? +* -123.45 +* 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. It went down +* +* 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 +#include +using std::cout; +using std::cin; +using std::endl; + +int main() +{ + 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; + + money = money + (money * raise); + // Fixed this line of code to properly calcutate the raise. + + cout << "After your raise you have $"; + cout << money << endl; + + return 0; +} +// Part one of this debug was possibly patched in a recent development making the whole section 1 non existent +// Part 2 has you do a breakpoint to test the second half of the coding. you find out the fomula for adding the increase in raise to your current pay. +// This only shows 123.45 * .1 = 12.345. +//In step 3 you fix the coding by doing this formula money = 123.45 + (123.45 * .1) = 135.795 +//Hope this helps. \ No newline at end of file diff --git a/CST116-Lab0-Crawford/Ch 5 Debugging Project.cpp b/CST116-Lab0-Crawford/Ch 5 Debugging Project.cpp new file mode 100644 index 0000000..f175815 --- /dev/null +++ b/CST116-Lab0-Crawford/Ch 5 Debugging Project.cpp @@ -0,0 +1,97 @@ +/******************************************************************** +* File: Chap_5_Debugging.cpp +* Debugging +* Working with Github + + Make simple changes to a file + +* General Instructions: Complete each step before proceeding to the +* next. +* +* Lloyd Crawford, CST 116 02, Lab #0, IDE, SImple Program, Github + +* 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? +* 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? +* -123.45 +* 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. It went down +* +* 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 +#include +using std::cout; +using std::cin; +using std::endl; + +int main() +{ + 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; + + money = money + (money * raise); + // Fixed this line of code to properly calcutate the raise. + + cout << "After your raise you have $"; + cout << money << endl; + + return 0; +} +// Part one of this debug was possibly patched in a recent development making the whole section 1 non existent +// Part 2 has you do a breakpoint to test the second half of the coding. you find out the fomula for adding the increase in raise to your current pay. +// This only shows 123.45 * .1 = 12.345. +//In step 3 you fix the coding by doing this formula money = 123.45 + (123.45 * .1) = 135.795 +//Hope this helps. \ No newline at end of file diff --git a/CST116-Lab0-Crawford/Ch 5 Debugging Project.sln b/CST116-Lab0-Crawford/Ch 5 Debugging Project.sln new file mode 100644 index 0000000..b289923 --- /dev/null +++ b/CST116-Lab0-Crawford/Ch 5 Debugging Project.sln @@ -0,0 +1,31 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.32228.343 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Ch 5 Debugging Project", "Ch 5 Debugging Project.vcxproj", "{57683855-4FB5-44EC-A27A-69826948F323}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {57683855-4FB5-44EC-A27A-69826948F323}.Debug|x64.ActiveCfg = Debug|x64 + {57683855-4FB5-44EC-A27A-69826948F323}.Debug|x64.Build.0 = Debug|x64 + {57683855-4FB5-44EC-A27A-69826948F323}.Debug|x86.ActiveCfg = Debug|Win32 + {57683855-4FB5-44EC-A27A-69826948F323}.Debug|x86.Build.0 = Debug|Win32 + {57683855-4FB5-44EC-A27A-69826948F323}.Release|x64.ActiveCfg = Release|x64 + {57683855-4FB5-44EC-A27A-69826948F323}.Release|x64.Build.0 = Release|x64 + {57683855-4FB5-44EC-A27A-69826948F323}.Release|x86.ActiveCfg = Release|Win32 + {57683855-4FB5-44EC-A27A-69826948F323}.Release|x86.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {847C2D32-D5B4-4378-AF10-BC31589B8C0A} + EndGlobalSection +EndGlobal diff --git a/CST116-Lab0-Crawford/Ch 5 Debugging Project.vcxproj b/CST116-Lab0-Crawford/Ch 5 Debugging Project.vcxproj new file mode 100644 index 0000000..1710406 --- /dev/null +++ b/CST116-Lab0-Crawford/Ch 5 Debugging Project.vcxproj @@ -0,0 +1,148 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {57683855-4fb5-44ec-a27a-69826948f323} + Ch5DebuggingProject + 10.0 + CST116-Debugging-Crawford + + + + Application + true + v143 + Unicode + + + Application + false + v143 + true + Unicode + + + Application + true + v143 + Unicode + + + Application + false + v143 + true + Unicode + + + + + + + + + + + + + + + + + + + + + true + + + false + + + true + + + false + + + + Level3 + true + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + + + + + Level3 + true + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + + + Level3 + true + _DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + + + + + Level3 + true + true + true + NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + + + + + + + \ No newline at end of file diff --git a/CST116-Lab0-Crawford/Ch 5 Debugging Project.vcxproj.filters b/CST116-Lab0-Crawford/Ch 5 Debugging Project.vcxproj.filters new file mode 100644 index 0000000..40b0ab5 --- /dev/null +++ b/CST116-Lab0-Crawford/Ch 5 Debugging Project.vcxproj.filters @@ -0,0 +1,22 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Source Files + + + \ No newline at end of file diff --git a/CST116-Lab0-Crawford/~AutoRecover.Ch 5 Debugging Project.vcxproj b/CST116-Lab0-Crawford/~AutoRecover.Ch 5 Debugging Project.vcxproj new file mode 100644 index 0000000..a29b8d7 --- /dev/null +++ b/CST116-Lab0-Crawford/~AutoRecover.Ch 5 Debugging Project.vcxproj @@ -0,0 +1,148 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {57683855-4fb5-44ec-a27a-69826948f323} + Ch5DebuggingProject + 10.0 + CST116-Debugging-Crawford + + + + Application + true + v143 + Unicode + + + Application + false + v143 + true + Unicode + + + Application + true + v143 + Unicode + + + Application + false + v143 + true + Unicode + + + + + + + + + + + + + + + + + + + + + true + + + false + + + true + + + false + + + + Level3 + true + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + + + + + Level3 + true + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + + + Level3 + true + _DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + + + + + Level3 + true + true + true + NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + + + + + + + \ No newline at end of file -- cgit v1.2.3