summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Project2_Fhernandez_BSchroeder.sln31
-rw-r--r--Project2_Fhernandez_BSchroeder/Project2_Fhernandez_BSchroeder.cpp530
-rw-r--r--Project2_Fhernandez_BSchroeder/Project2_Fhernandez_BSchroeder.vcxproj150
-rw-r--r--Project2_Fhernandez_BSchroeder/Project2_Fhernandez_BSchroeder.vcxproj.filters25
-rw-r--r--Project2_Fhernandez_BSchroeder/Project2_TestRuns.txt371
5 files changed, 1107 insertions, 0 deletions
diff --git a/Project2_Fhernandez_BSchroeder.sln b/Project2_Fhernandez_BSchroeder.sln
new file mode 100644
index 0000000..10a8777
--- /dev/null
+++ b/Project2_Fhernandez_BSchroeder.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.31702.278
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Project2_Fhernandez_BSchroeder", "Project2_Fhernandez_BSchroeder\Project2_Fhernandez_BSchroeder.vcxproj", "{EF4F0557-60B6-47E0-BB8C-CB6779B0EBAA}"
+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
+ {EF4F0557-60B6-47E0-BB8C-CB6779B0EBAA}.Debug|x64.ActiveCfg = Debug|x64
+ {EF4F0557-60B6-47E0-BB8C-CB6779B0EBAA}.Debug|x64.Build.0 = Debug|x64
+ {EF4F0557-60B6-47E0-BB8C-CB6779B0EBAA}.Debug|x86.ActiveCfg = Debug|Win32
+ {EF4F0557-60B6-47E0-BB8C-CB6779B0EBAA}.Debug|x86.Build.0 = Debug|Win32
+ {EF4F0557-60B6-47E0-BB8C-CB6779B0EBAA}.Release|x64.ActiveCfg = Release|x64
+ {EF4F0557-60B6-47E0-BB8C-CB6779B0EBAA}.Release|x64.Build.0 = Release|x64
+ {EF4F0557-60B6-47E0-BB8C-CB6779B0EBAA}.Release|x86.ActiveCfg = Release|Win32
+ {EF4F0557-60B6-47E0-BB8C-CB6779B0EBAA}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {5378BEBD-5B45-4A9F-9826-584BACD8B84A}
+ EndGlobalSection
+EndGlobal
diff --git a/Project2_Fhernandez_BSchroeder/Project2_Fhernandez_BSchroeder.cpp b/Project2_Fhernandez_BSchroeder/Project2_Fhernandez_BSchroeder.cpp
new file mode 100644
index 0000000..da4457c
--- /dev/null
+++ b/Project2_Fhernandez_BSchroeder/Project2_Fhernandez_BSchroeder.cpp
@@ -0,0 +1,530 @@
+// Project2_Scratch.cpp : This file contains the 'main' function. Program execution begins and ends there.
+// Written by Ben Schroeder and Freddy Hernandez
+// date: 10/30/2021 and periodically updated up to 11/07/2021
+//
+// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+//
+// Meetings:
+// 10/26/2021 In-class meeting: Went over psuedocode for the various operation functions of the program. Took this home to review.
+// 10/29/2021 Via Email: Discussing the "3rd set of data". Discussed the psuedocode. Questions about getting the project onto Github
+// 10/30/2021 Via Email: BAS emailed updated code for a majority of the program created on 10/30 to FHJ for review and revising by FHJ.
+// We also discussed possibly going of the code together over the weekend. If not over the weekend, early next week.
+// 11/01/2021 Via Email: Scheduled an in-person meeting between FHJ and BAS to go over the updated code and plan for revisions.
+// 11/02/2021 IN-PERSON Meeting:
+// A) Revision list:
+// 1) Fix the order of the flow of the program ( DisplayMenu(), ProcessMenuChoice, then GetData() in the specific
+// operation functions that require the input number )
+// -This will require changing function inputs as well as which function will be called from which functions
+// a) Call DisplayMenu() in main() Change DisplayMenu() so that it requires NO INPUT, Call ProcessMenuChoice()
+// from DisplayMenu()
+// b) ProcessMenuChoice() option outputs will have to be altered because ProcessMenuChoice() will no longer
+// have 'number' to work with
+// c) Call GetData() from specific ProcessMenuChoice() options that require the input number (ie 1 thru 7)
+// then call the option function with the number intact as they are already set up.
+// d) GetData() should just return number and should not call any function
+// 2) There is a glitch when choosing option 10 in ProcessMenuChoice(). It displays the menu one more time
+// before exiting
+// B) Create ReverseDigits(), (activate it in Prototypes as well in ProcessMenuChoice())
+// C) See about getting the Project in the proper GitHub page. (ask Martha about where that is) This way we can each be
+// updating the code with all the updates decribed for the other partner, in real time.
+// D) Write up a TESTING PROCEDURE PLAN
+// E) Prepare a suitable format for the Psuedocode to be presented (other than the penciled notes jotted down on paper)
+// 11/04/2021 VIA EMAIL: Code updates emailed back and forth... Continuing edits and troubleshooting.
+// 11/05/2021 Via Email: Documentaion details, submission questions etc...
+// 11/07/2021 Via Phone and email: Updating the documentation...
+//
+//
+//
+//
+// Code Updates:
+// 10/26/2021 Psuedocode drawn up on paper and reviewed by FHJ
+// 10/30/2021 BAS created: int main(),int GetData(), void DisplayMenu(int&), int ProcessMenuChoice(int&), void IsPosNeg(int&),
+// void IsOddEven(int&), void Sqrt(int&), void ChangeSign(int&), void NumDigits(int&), void DigitAtPosition(int&),
+// void DisplayAdditionTable(), void DisplayMultiplicationTable() (Much testing NEEDS to be done)
+// 11/01/2021 BAS added and tested the ChangeSign() function
+// 11/01/2021 BAS fixed Sqrt() function to add clauses for 0 and negative numbers
+// 11/01/2021 BAS fixed format of the Addition and Multiplication tables to make them look better
+// 11/01/2021 BAS fixed IsOddEven() so that negative numbers could be evaluated... added abs(number)%2
+// 11/01/2021 BAS updated documentation comments and meeting info.
+// 11/02/2021 FHJ edited the functions to change the program flow. Now menu is displayed first, then the number
+// is requested for functions 1 thru 7. This seems to be a more logical flow for the program to use.
+// 11/03/2021 FHJ built and tested the ReverseDigits() function.
+// 11/04/2021 Updated the program to better meet the requirements of the assignment (ie pass by value, pass by reference )
+//
+//
+//
+//
+//
+// AGILE QUESTIONS for Benjamin Schroeder
+// (ie 1)What specific task? 2)What do I know about the specific task? 3)What do I not know about the specific task? )
+// 10/26/2021 1) I will begin to draw up psuedocode for the functions in the project,
+// 2) I know how to do most of the operations involved in the project, however,
+// 3) I do not know how exactly to build the addition and multiplication tables.
+// 10/30/2021 1) I will begin coding the program functions starting with GetData() and go down the list as they are introduced in
+// ch7, 8, and 9.
+// 2) I know I will be testing as I go, so I will see results pretty readily.
+// 3) I do not know how to do 4 of the functions right off hand, the addition and multiplication tables, ReverseDigits(), and
+// DigitAtPosition()
+// 11/01/2021 1) I will begin running the program and see if I can find any things that need changing
+// 2) I know I will find mistakes and unaesthetic problems in the program as the code is still very much a scratch draft.
+// 3) Not sure if I will fix everything I see or wait to talk to Freddy about what his thoughts are on the Project.
+// 11/04/2021 1) I will begin toubleshooting the program.
+// 2) I will probably find some errors upon testing every function with: Positive, Negative, and Zero.
+// 3) Not sure exactly where the errors are going to show up.
+// - Found some major things that needed addressed. Fixed function inputs
+// 11/05/2021 1) I will do some more rins of the program looking for errors or undesireable effects.
+// 2) There is still a bit of a flow problem in the program, but all in all the program works as it should.
+// 3) I don't know that anymore fixes need to take place.
+//
+//
+//
+// AGILE QUESTIONS for Freddy Hernandez
+// (ie 1)What specific task? 2)What do I know about the specific task? 3)What do I not know about the specific task? )
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//Testing Plan:
+// Testing consists of running each function 1 thru 7 with 3 possibilities.Positive and negative numbers, and zero.
+// The outputs should handle all three cases. Test runs are included in the accompanying .txt file
+//
+//
+//
+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+//PSUEDOCODE:
+//
+// From main(), get the program started by displaying the menu (ie Call DisplayMenu() )
+//
+//
+///////////////////////////////////
+// void DisplayMenu()
+// Show menu options
+// int choice = somenumber
+// int number = somenumber
+// do
+// ask for an option between 1 and 10
+// record "choice" entered
+// while ...the option number entered is out of that range
+// if option is one of the first 7:
+// Set "number" = GetData() (ie call GetData() )
+// Call ProcessMenuChoice(choice, number)
+//
+//
+////////////////////////////////////////
+// int GetData()
+// int number = outside of range
+// while( number outside of range)
+// ask for a number between -1000000 and 1000000
+// record number
+// return number
+//
+///////////////////////////////////////////
+// void ProcessMenuCoice(choice, number)... ("number" is to be called by reference)
+// use a switch case of (choice) to pick which function to call
+// within each case, call the appropriate function to operate.
+// (for functions 1 thru 7, there is an input variable "number" to use in the function.)
+// (for functions 8 and 9, no input variable is required...they are only displaying couts.)
+// (case 10 exits the program)
+//
+//
+/////////////////////////////////////////////
+// void IsPosNeg(number)
+// There will be 3 possibilties, Positive, negative, and zero
+// (If, If Else, and Else statements will be used for each possibility)
+// If number > 0 ....cout number is positive
+// If number < 0 ....cout number is negative
+// If number == 0 .... cout zero is neither pos or neg
+// Then Call DisplayMenu() to start the program back through
+//
+//
+///////////////////////////////////////////
+// void IsOddEven(number)
+// Either the number leaves a remainder when divided by 2, or it does not.
+// If there is a remainder from number%2, the number is odd.... cout odd
+// If there is no remainder from number%2, the number is even... cout even
+// Then call DisplayMenu() to start the program back through
+//
+//
+////////////////////////////////////////////
+// void Sqrt(number) (find the square root of the number)
+// There will be 3 possibilties for this function: Positive numbers, negative, and or zero
+// IF number > 0 ... use sqrt(number) ..cout the squareroot.
+// IF number < 0 ... cout "negative numbers do not have squareroots"
+// IF number ==0 ... cout " zero doesn't have a squareroot"
+// Then call DisplayMenu() to start the program back through
+//
+//
+////////////////////////////////////////////
+// void ChangeSign(number)
+// There are 2 possibilities for this function: Postive or negative numbers
+// If number > 0 ...subtract the number from 0 and cout the result
+// If number < 0 cout the absolute value of the number
+// Then call DisplayMenu() to start the program back through
+//
+//
+////////////////////////////////////////////
+// void NumDigits(number)
+// Every digit adds a factor OF 10 to the number...
+// Dividing "number" by 10 and counting how many times we do this while the number is still >=1
+// will give us how many digits the original number had.
+// count = 0
+// while (number >= 1)
+// number = number/10
+// count = count+1
+// cout the count
+// Then call DisplayMenu() to start the program back through
+//
+//
+//////////////////////////////////////////////
+// void DigitAtPos(number)
+// Ask which digit the user wants to see ... record that int "digitPos"
+// Then divide number by 10 to the power of 1 less than the digitPos desired
+// then find the remainder when that result is divided by 10 once more.
+// This will be the digit at the position that the user wanted to see.
+// Then call DisplayMenu() to start the program back through
+//
+//
+/////////////////////////////////////////////
+// void ReverseDigits(number)
+// find the remainder at each digit position by using number%10 and record this "remainder"
+// Construct a "reversed number" by adding this remainder to an accumulative "reversed number *10"
+// Iterate through the entire number by redefining the number to "itself divided by 10" (to more to the next digit position)
+// cout the reversed number
+// Then call DisplayMenu() to start the program back through
+//
+//
+/////////////////////////////////////////////////
+// void DisplatAdditionTable()
+// This will be a 12 by 12 table
+// we will need an array of numbers 1 thru 12 to represent the horizontal row at the top of the table
+// We will need an additional array of numbers 1 thru 12 representing the vertical column on the left side of the table
+// A for loop can be utilized to cout each row of the table by iterating through each entry of the vertical array
+// A for loop within the above for loop will handle the calculations (adding results) of whichever horizontal item with
+// the particular row (vertical item from the outside for loop) cout of each calculation will contruct the table row by row.
+// Then call DisplayMenu() to start the program back through
+//
+//////////////////////////////////////////////////
+// void DisplayMultiplicationTable()
+// Similar to the addition table except with the contents being multiplication results
+// Then call DisplayMenu() to start the program back through
+//
+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+
+
+
+
+#include <math.h>
+#include <iostream>
+using namespace std;
+//Function Prototypes
+int GetData(); //ask for and returns the number input by the user
+void DisplayMenu(); //Displays the menu of all of the program's options
+void ProcessMenuChoice(int, int&); //Takes input from the user and directs the program to the various operation functions
+void IsPosNeg(int); // Below are the various operation functions of the program
+void IsOddEven(int);
+void Sqrt(int);
+void ChangeSign(int);
+void NumDigits(int);
+void DigitAtPosition(int);
+void ReverseDigits(int);
+void DisplayAdditionTable();
+void DisplayMultiplicationTable();
+
+int main()
+{
+ DisplayMenu();
+}
+
+int GetData()
+{
+ int number = 1000001;
+ do {
+ cout << "\nEnter a number between -1,000,000 and 1,000,000: ";
+ cin >> number;
+ } while (number < -1000000 || number >1000000);
+ return number;
+}
+
+void DisplayMenu()
+{
+ cout << "***************************************************************************\n";
+ cout << "\tThis program can perform several mathematical operations\n";
+ cout << "***************************************************************************\n";
+ cout << "1) See if the number is Positive or Negative\n";
+ cout << "2) See if the number is Odd or Even.\n";
+ cout << "3) Find the square root of the number\n";
+ cout << "4) Change the sign of the number\n";
+ cout << "5) Determine how many digits the number has.\n";
+ cout << "6) Find the digit at a specific position in the number\n";
+ cout << "7) Reverse the digits in the number\n";
+ cout << "8) Display The Addition Table\n";
+ cout << "9) Display the Multiplication Table\n";
+ cout << "10) Exit\n";
+ cout << "***************************************************************************\n";
+ int choice = 10;
+ int number = 0;
+ do {
+ cout << "\t(Pick an option from 1 to 10): ";
+ cin >> choice;
+
+ } while (choice < 1 || choice >10);
+ if (choice < 8)
+ number = GetData();
+ ProcessMenuChoice(choice, number);
+}
+
+void ProcessMenuChoice(int choice, int& number)
+{
+ switch (choice)
+ {
+ case 1:
+ cout << "\n 1) Positive or Negative\n";
+ IsPosNeg(number);
+ break;
+
+ case 2:
+ cout << "\n 2) Odd or Even.\n";
+ IsOddEven(number);
+ break;
+
+ case 3:
+ cout << "\n 3) Find the square root \n";
+ Sqrt(number);
+ break;
+
+ case 4:
+ cout << "\n 4) Change the sign\n";
+ ChangeSign(number);
+ break;
+
+ case 5:
+ cout << "\n 5) How many digits \n";
+ NumDigits(number);
+ break;
+
+ case 6:
+ cout << "\n 6) Find the digit at a specific position \n";
+ DigitAtPosition(number);
+ break;
+
+ case 7:
+ cout << "\n 7) Reverse the digits\n";
+ ReverseDigits(number);
+ break;
+
+ case 8:
+ cout << "\n\t The Addition Table\n";
+ DisplayAdditionTable();
+ break;
+
+ case 9:
+ cout << "\n\t The Multiplication Table\n";
+ DisplayMultiplicationTable();
+ break;
+
+ case 10:
+ cout << "\n\n\tThank you for using this program. Have a nice day!\n\n\n";
+ break;
+ }
+}
+
+//************************** FUNCTIONS FOR THE VARIOUS MENU OPTIONS ********************************************************************
+void IsPosNeg(int number)
+{
+ if (number > 0)
+ {
+ cout << "\t" << number << " is a positive number." << "\n\n";
+ }
+
+ else if (number < 0)
+ {
+ cout << "\t" << number << " is a negative number." << "\n\n";
+ }
+
+ else if (number == 0)
+ {
+ cout << "\t" << number << " is neither negative nor positive, it's zero." << "\n\n";
+ }
+ DisplayMenu();
+}
+
+void IsOddEven(int number)
+{
+ int oddeven = abs(number) % 2;
+ if (oddeven > 0)
+ cout << "\t" << number << " is an odd number" << "\n\n";
+ else if (oddeven == 0)
+ cout << "\t" << number << " is an even number" << "\n\n";
+ DisplayMenu();
+}
+
+void Sqrt(int number)
+{
+ if (number > 0)
+ {
+ float root = sqrt(number);
+ cout << "\t" << "The square root of " << number << " is: " << root << "\n\n";
+ }
+
+ else if (number < 0)
+ cout << "\t Negative numbers do not have square roots." << "\n\n";
+ else if (number == 0)
+ cout << "\t Zero doesn't have a square root." << "\n\n";
+ DisplayMenu();
+}
+
+void ChangeSign(int number)
+{
+ int chngSign = number;
+ if (number >= 0)
+ chngSign = 0 - number;
+ else if (number < 0)
+ chngSign = abs(number);
+ cout << "\t" << "Changing the sign of " << number << " gives us " << chngSign << "\n\n";
+ DisplayMenu();
+}
+
+void NumDigits(int number)
+{
+ int temp = number;
+ int i = 0;
+ while (abs(temp) >= 1)
+ {
+ temp = temp / 10;
+ i = i + 1;
+ }
+
+ cout << "\t" << number << " has " << i << " digits" << "\n\n";
+ DisplayMenu();
+}
+
+void DigitAtPosition(int number)
+{
+ int digitPos = 1;
+ cout << "\t" << "Which digit position are you interested in?: ";
+ cin >> digitPos;
+ int temp = number;
+ temp = temp / pow(10, digitPos - 1);
+ temp = abs(temp % 10);
+ cout << "\t" << "Digit position #" << digitPos << " of " << number << " is: " << temp << "\n\n";
+ DisplayMenu();
+}
+
+
+void ReverseDigits(int number)
+{
+ int n = number;
+ int remainder, reversedNumber = 0;
+ while (n != 0)
+ {
+ remainder = n % 10;
+ reversedNumber = reversedNumber * 10 + remainder;
+ n /= 10;
+ }
+ cout << "\t" << number << " reversed is: " << reversedNumber << "\n\n";
+ DisplayMenu();
+
+}
+
+void DisplayAdditionTable()
+{
+ cout << "\n\n";
+ int numsH[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
+ int numsV[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
+ cout << " + | "; // top corner identifying Addition Table
+ for (int i = 0; i < 12; i++) //top line (numbers 1 thru 12)
+ {
+ if (numsH[i] >= 10)
+ {
+ cout << numsH[i] << " "; //proper spacing for one or two digit numbers
+ }
+ else
+ {
+ cout << numsH[i] << " ";
+ }
+ }
+ cout << "\n---|---------------------------------------\n";
+ for (int i = 0; i < 12; i++)
+ {
+ if (numsV[i] >= 10)
+ {
+ cout << numsV[i] << " | "; //left most column and vertical separator for the line
+ }
+ else
+ {
+ cout << numsV[i] << " | ";
+ }
+ for (int j = 0; j < 12; j++) // filling the rest of the addition table
+ {
+ if (numsV[i] + numsH[j] >= 10)
+ {
+ cout << numsV[i] + numsH[j] << " "; // again proper spacing
+ }
+ else
+ {
+ cout << numsV[i] + numsH[j] << " ";
+ }
+ }
+ cout << "\n";
+ }
+ cout << "\n\n";
+ DisplayMenu();
+}
+
+void DisplayMultiplicationTable()
+{
+ cout << "\n\n";
+ int numsH[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
+ int numsV[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
+ cout << " x | "; //upper left corner identifying multiplication table
+ for (int i = 0; i < 12; i++) // top line 1 thru 12
+ {
+ if (numsH[i] >= 10)
+ {
+ cout << numsH[i] << " "; //spacing for 1 of 2 digit numbers per column
+ }
+ else
+ {
+ cout << numsH[i] << " ";
+ }
+ }
+ cout << "\n---|------------------------------------------------\n";
+ for (int i = 0; i < 12; i++)
+ {
+ if (numsV[i] >= 10) //left most comlumn and vertical separato
+ {
+ cout << numsV[i] << " | ";
+ }
+ else
+ {
+ cout << numsV[i] << " | ";
+ }
+ for (int j = 0; j < 12; j++) //filling in the rest of the multiplication tabl
+ {
+ if (numsV[i] * numsH[j] >= 100)
+ {
+ cout << numsV[i] * numsH[j] << " "; //again proper spacing for digits
+ }
+ else if (numsV[i] * numsH[j] >= 10)
+ {
+ cout << numsV[i] * numsH[j] << " ";
+ }
+ else
+ cout << numsV[i] * numsH[j] << " ";
+ }
+ cout << "\n";
+ }
+ cout << "\n\n";
+ DisplayMenu();
+}
+
+// 6. In the future, to open this project again, go to File > Open > Project and select the .sln file
diff --git a/Project2_Fhernandez_BSchroeder/Project2_Fhernandez_BSchroeder.vcxproj b/Project2_Fhernandez_BSchroeder/Project2_Fhernandez_BSchroeder.vcxproj
new file mode 100644
index 0000000..9be3d20
--- /dev/null
+++ b/Project2_Fhernandez_BSchroeder/Project2_Fhernandez_BSchroeder.vcxproj
@@ -0,0 +1,150 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>16.0</VCProjectVersion>
+ <Keyword>Win32Proj</Keyword>
+ <ProjectGuid>{ef4f0557-60b6-47e0-bb8c-cb6779b0ebaa}</ProjectGuid>
+ <RootNamespace>Project2FhernandezBSchroeder</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>v142</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>v142</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>v142</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>v142</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="Project2_Fhernandez_BSchroeder.cpp" />
+ </ItemGroup>
+ <ItemGroup>
+ <Text Include="Project2_TestRuns.txt" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/Project2_Fhernandez_BSchroeder/Project2_Fhernandez_BSchroeder.vcxproj.filters b/Project2_Fhernandez_BSchroeder/Project2_Fhernandez_BSchroeder.vcxproj.filters
new file mode 100644
index 0000000..f3065e0
--- /dev/null
+++ b/Project2_Fhernandez_BSchroeder/Project2_Fhernandez_BSchroeder.vcxproj.filters
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="Project2_Fhernandez_BSchroeder.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <Text Include="Project2_TestRuns.txt" />
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/Project2_Fhernandez_BSchroeder/Project2_TestRuns.txt b/Project2_Fhernandez_BSchroeder/Project2_TestRuns.txt
new file mode 100644
index 0000000..fcfe956
--- /dev/null
+++ b/Project2_Fhernandez_BSchroeder/Project2_TestRuns.txt
@@ -0,0 +1,371 @@
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 1
+
+Enter a number between -1,000,000 and 1,000,000: -1233215
+
+Enter a number between -1,000,000 and 1,000,000: -12354
+
+ 1) Positive or Negative
+ -12354 is a negative number.
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 1
+
+Enter a number between -1,000,000 and 1,000,000: 12354
+
+ 1) Positive or Negative
+ 12354 is a positive number.
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 2
+
+Enter a number between -1,000,000 and 1,000,000: 123
+
+ 2) Odd or Even.
+ 123 is an odd number
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 2126
+ (Pick an option from 1 to 10): 2
+
+Enter a number between -1,000,000 and 1,000,000: 126
+
+ 2) Odd or Even.
+ 126 is an even number
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 3
+
+Enter a number between -1,000,000 and 1,000,000: 64
+
+ 3) Find the square root
+ The square root of 64 is: 8
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 3
+
+Enter a number between -1,000,000 and 1,000,000: -64
+
+ 3) Find the square root
+ Negative numbers do not have square roots.
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 3
+
+Enter a number between -1,000,000 and 1,000,000: 0
+
+ 3) Find the square root
+ Zero doesn't have a square root.
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 4
+
+Enter a number between -1,000,000 and 1,000,000: -6549
+
+ 4) Change the sign
+ Changing the sign of -6549 gives us 6549
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 4
+
+Enter a number between -1,000,000 and 1,000,000: 6549
+
+ 4) Change the sign
+ Changing the sign of 6549 gives us -6549
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 5
+
+Enter a number between -1,000,000 and 1,000,000: 985462
+
+ 5) How many digits
+ 985462 has 6 digits
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 6
+
+Enter a number between -1,000,000 and 1,000,000: 998745
+
+ 6) Find the digit at a specific position
+ Which digit position are you interested in?: 4
+ Digit position #4 of 998745 is: 8
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 7
+
+Enter a number between -1,000,000 and 1,000,000: 12345
+
+ 7) Reverse the digits
+ 12345 reversed is: 54321
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 7
+
+Enter a number between -1,000,000 and 1,000,000: -654321
+
+ 7) Reverse the digits
+ -654321 reversed is: -123456
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 8
+
+ The Addition Table
+
+
+ + | 1 2 3 4 5 6 7 8 9 10 11 12
+---|---------------------------------------
+1 | 2 3 4 5 6 7 8 9 10 11 12 13
+2 | 3 4 5 6 7 8 9 10 11 12 13 14
+3 | 4 5 6 7 8 9 10 11 12 13 14 15
+4 | 5 6 7 8 9 10 11 12 13 14 15 16
+5 | 6 7 8 9 10 11 12 13 14 15 16 17
+6 | 7 8 9 10 11 12 13 14 15 16 17 18
+7 | 8 9 10 11 12 13 14 15 16 17 18 19
+8 | 9 10 11 12 13 14 15 16 17 18 19 20
+9 | 10 11 12 13 14 15 16 17 18 19 20 21
+10 | 11 12 13 14 15 16 17 18 19 20 21 22
+11 | 12 13 14 15 16 17 18 19 20 21 22 23
+12 | 13 14 15 16 17 18 19 20 21 22 23 24
+
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 9
+
+ The Multiplication Table
+
+
+ x | 1 2 3 4 5 6 7 8 9 10 11 12
+---|------------------------------------------------
+1 | 1 2 3 4 5 6 7 8 9 10 11 12
+2 | 2 4 6 8 10 12 14 16 18 20 22 24
+3 | 3 6 9 12 15 18 21 24 27 30 33 36
+4 | 4 8 12 16 20 24 28 32 36 40 44 48
+5 | 5 10 15 20 25 30 35 40 45 50 55 60
+6 | 6 12 18 24 30 36 42 48 54 60 66 72
+7 | 7 14 21 28 35 42 49 56 63 70 77 84
+8 | 8 16 24 32 40 48 56 64 72 80 88 96
+9 | 9 18 27 36 45 54 63 72 81 90 99 108
+10 | 10 20 30 40 50 60 70 80 90 100 110 120
+11 | 11 22 33 44 55 66 77 88 99 110 121 132
+12 | 12 24 36 48 60 72 84 96 108 120 132 144
+
+
+***************************************************************************
+ This program can perform several mathematical operations
+***************************************************************************
+1) See if the number is Positive or Negative
+2) See if the number is Odd or Even.
+3) Find the square root of the number
+4) Change the sign of the number
+5) Determine how many digits the number has.
+6) Find the digit at a specific position in the number
+7) Reverse the digits in the number
+8) Display The Addition Table
+9) Display the Multiplication Table
+10) Exit
+***************************************************************************
+ (Pick an option from 1 to 10): 10
+
+
+ Thank you for using this program. Have a nice day!
+
+
+
+C:\Users\Lenovo\source\repos\Project2_Scratch\Debug\Project2_Scratch.exe (process 12324) 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 . . .