aboutsummaryrefslogtreecommitdiffstats
path: root/ee1301/wk3
diff options
context:
space:
mode:
Diffstat (limited to 'ee1301/wk3')
-rw-r--r--ee1301/wk3/hw3_directory/strap012_HW3A.cpp122
-rw-r--r--ee1301/wk3/hw3_directory/strap012_HW3B.cpp128
-rw-r--r--ee1301/wk3/hw3_directory/strap012_HW3C.cpp100
-rw-r--r--ee1301/wk3/lab3/RootBabylon2.cpp80
-rw-r--r--ee1301/wk3/lab3/RootBabylonOG.cpp66
-rw-r--r--ee1301/wk3/lab3/fib.cpp42
-rw-r--r--ee1301/wk3/lab3/gcd.cpp72
-rw-r--r--ee1301/wk3/lab3/multTable.cpp36
-rw-r--r--ee1301/wk3/lab3/mysteryBox.cpp24
-rw-r--r--ee1301/wk3/lab3/primeFactor.cpp52
-rw-r--r--ee1301/wk3/lab3/strap012_lab3_decimal_roman_conv.cpp116
11 files changed, 419 insertions, 419 deletions
diff --git a/ee1301/wk3/hw3_directory/strap012_HW3A.cpp b/ee1301/wk3/hw3_directory/strap012_HW3A.cpp
index 6a4ec6c..42aae10 100644
--- a/ee1301/wk3/hw3_directory/strap012_HW3A.cpp
+++ b/ee1301/wk3/hw3_directory/strap012_HW3A.cpp
@@ -1,62 +1,62 @@
-/*
-27 Feb 2019
-Matthew Strapp
-5449340
-EE1301
-Spring 2019
-Homework 3A
-One-armed Bandit Simulator
-*/
-
-#include <iostream>
-#include <stdlib.h>
-#include <cmath>
-#include <iomanip>
-
-int spin_the_wheels(int d, int w);
-
-int main () {
- srand(time(NULL));
- int w, d, winCount, winTest;
- for (w=3; w<=6; w++) {
- winCount=0;
- for (d=9; d<=27; d++) {
- winCount=0;
- for (long n=1000000; n>0; n--) { //The simulation is always done 1,000,000 times
- winTest = spin_the_wheels(d, w);
- winCount+=winTest;
- }
- if (w==6) {
- std::cout << std::scientific;
- }
- std::cout << "w=" << w << ", d=" << d
- << ": Simulated probability = m/n = " << (winCount / 1000000.0) * 100.0 << "%. "
- << "Theoretical probability = " << (d / (pow(d, w))) * 100 << "%." << std::endl;
- d+=2;
- }
- }
-}
-
-// Function: spin_the_wheels
-// ---------------------------
-// Simulates the one-armed bandit from the previous HW
-// d: the number of options on the spinner
-// w: the number of spinners
-// returns: Either 1 for win or 0 for loss
-
-int spin_the_wheels(int d, int w) {
- int spinOG=0, spinNew=0, win=0;
- spinOG = ( (rand() % d) + 1); //Original spin is always the same
- w-=1; //The first wheel was spun as spinOG
- for (int i=0; i<w; i++) {
- spinNew = ( (rand() % d) + 1);
- if (spinOG==spinNew) {
- win++;
- }
- }
- if (win==w) { //The only win condition is if every wheel matches
- return 1;
- } else {
- return 0;
- }
+/*
+27 Feb 2019
+Matthew Strapp
+5449340
+EE1301
+Spring 2019
+Homework 3A
+One-armed Bandit Simulator
+*/
+
+#include <iostream>
+#include <stdlib.h>
+#include <cmath>
+#include <iomanip>
+
+int spin_the_wheels(int d, int w);
+
+int main () {
+ srand(time(NULL));
+ int w, d, winCount, winTest;
+ for (w=3; w<=6; w++) {
+ winCount=0;
+ for (d=9; d<=27; d++) {
+ winCount=0;
+ for (long n=1000000; n>0; n--) { //The simulation is always done 1,000,000 times
+ winTest = spin_the_wheels(d, w);
+ winCount+=winTest;
+ }
+ if (w==6) {
+ std::cout << std::scientific;
+ }
+ std::cout << "w=" << w << ", d=" << d
+ << ": Simulated probability = m/n = " << (winCount / 1000000.0) * 100.0 << "%. "
+ << "Theoretical probability = " << (d / (pow(d, w))) * 100 << "%." << std::endl;
+ d+=2;
+ }
+ }
+}
+
+// Function: spin_the_wheels
+// ---------------------------
+// Simulates the one-armed bandit from the previous HW
+// d: the number of options on the spinner
+// w: the number of spinners
+// returns: Either 1 for win or 0 for loss
+
+int spin_the_wheels(int d, int w) {
+ int spinOG=0, spinNew=0, win=0;
+ spinOG = ( (rand() % d) + 1); //Original spin is always the same
+ w-=1; //The first wheel was spun as spinOG
+ for (int i=0; i<w; i++) {
+ spinNew = ( (rand() % d) + 1);
+ if (spinOG==spinNew) {
+ win++;
+ }
+ }
+ if (win==w) { //The only win condition is if every wheel matches
+ return 1;
+ } else {
+ return 0;
+ }
} \ No newline at end of file
diff --git a/ee1301/wk3/hw3_directory/strap012_HW3B.cpp b/ee1301/wk3/hw3_directory/strap012_HW3B.cpp
index 3a46a45..16785bd 100644
--- a/ee1301/wk3/hw3_directory/strap012_HW3B.cpp
+++ b/ee1301/wk3/hw3_directory/strap012_HW3B.cpp
@@ -1,65 +1,65 @@
-/*
-27 Feb 2019
-Matthew Strapp
-5449340
-EE1301
-Spring 2019
-Homework 3B
-Character Detection
-*/
-
-#include <iostream>
-#include <stdlib.h>
-#include <cmath>
-#include <iomanip>
-
-int charTest (char character);
-
-int main () {
-using namespace std;
- int test;
- char character;
- bool isAlphaNumeric=true;
- while (isAlphaNumeric) {
- cout << "Enter a single digit or an alphabetic character: ";
- cin >> character;
- cout << "You entered " << character << ", ";
- test = charTest(character);
- if (test==0) {
- isAlphaNumeric=false;
- cout << "which is not a letter or a number.";
- }
- if (test==1) {
- cout << "which is a number.";
- }
- if (test==2) {
- cout << "which is a lower case letter.";
- }
- if (test==3) {
- cout << "which is an upper case letter.";
- }
- cout << endl;
- }
-}
-
-// Function: charTest
-// ---------------------------
-// Tests to see what kind of character was inputted
-// input: character from prompt in main
-// returns: 1 if number, 2 if lower case, 3 if upper case, 0 if not any of the previous
-
-int charTest (char character) {
- if (character >= '0' && character <= '9') {
- return 1;
- } else {
- if (character>='a' && character<='z') {
- return 2;
- } else {
- if (character>= 'A' && character<='Z') {
- return 3;
- } else {
- return 0;
- }
- }
- }
+/*
+27 Feb 2019
+Matthew Strapp
+5449340
+EE1301
+Spring 2019
+Homework 3B
+Character Detection
+*/
+
+#include <iostream>
+#include <stdlib.h>
+#include <cmath>
+#include <iomanip>
+
+int charTest (char character);
+
+int main () {
+using namespace std;
+ int test;
+ char character;
+ bool isAlphaNumeric=true;
+ while (isAlphaNumeric) {
+ cout << "Enter a single digit or an alphabetic character: ";
+ cin >> character;
+ cout << "You entered " << character << ", ";
+ test = charTest(character);
+ if (test==0) {
+ isAlphaNumeric=false;
+ cout << "which is not a letter or a number.";
+ }
+ if (test==1) {
+ cout << "which is a number.";
+ }
+ if (test==2) {
+ cout << "which is a lower case letter.";
+ }
+ if (test==3) {
+ cout << "which is an upper case letter.";
+ }
+ cout << endl;
+ }
+}
+
+// Function: charTest
+// ---------------------------
+// Tests to see what kind of character was inputted
+// input: character from prompt in main
+// returns: 1 if number, 2 if lower case, 3 if upper case, 0 if not any of the previous
+
+int charTest (char character) {
+ if (character >= '0' && character <= '9') {
+ return 1;
+ } else {
+ if (character>='a' && character<='z') {
+ return 2;
+ } else {
+ if (character>= 'A' && character<='Z') {
+ return 3;
+ } else {
+ return 0;
+ }
+ }
+ }
} \ No newline at end of file
diff --git a/ee1301/wk3/hw3_directory/strap012_HW3C.cpp b/ee1301/wk3/hw3_directory/strap012_HW3C.cpp
index 79a65a2..6886106 100644
--- a/ee1301/wk3/hw3_directory/strap012_HW3C.cpp
+++ b/ee1301/wk3/hw3_directory/strap012_HW3C.cpp
@@ -1,51 +1,51 @@
-/*
-27 Feb 2019
-Matthew Strapp
-5449340
-EE1301
-Spring 2019
-Homework 3C
-Character Detection
-*/
-
-#include <iostream>
-#include <stdlib.h>
-#include <cmath>
-#include <iomanip>
-using namespace std;
-
-void swapCase(char s);
-
-int main() {
- char character;
- do { //This loops until '@' is entered
- cout << "Please enter a character that is an ASCII letter in the range [A-Za-z]: ";
- cin >> character;
- if (character!='@') {
- swapCase(character);
- }
- } while (character!='@');
-}
-
-// Function: swapCase
-// ---------------------------
-// Swaps the case of a latin ASCII character and prints an error if not one
-// s: the character inputted
-// Outputs: Nothing, the function just outputs the response
-
-void swapCase(char s) {
- char New;
- cout << "You entered " << s;
- if ( (s >= 'a' && s <= 'z') || (s >= 'A' && s <= 'Z') ) {
- cout << ", I respond with ";
- if (s >= 'A' && s <= 'Z') {
- New = s + 32; //32 is the difference between capital and lowercase ASCII characters
- } else {
- New= s - 32;
- }
- cout << New;
- } else {
- cout << ", which is not a valid character.";
- }
- cout << endl;
+/*
+27 Feb 2019
+Matthew Strapp
+5449340
+EE1301
+Spring 2019
+Homework 3C
+Character Detection
+*/
+
+#include <iostream>
+#include <stdlib.h>
+#include <cmath>
+#include <iomanip>
+using namespace std;
+
+void swapCase(char s);
+
+int main() {
+ char character;
+ do { //This loops until '@' is entered
+ cout << "Please enter a character that is an ASCII letter in the range [A-Za-z]: ";
+ cin >> character;
+ if (character!='@') {
+ swapCase(character);
+ }
+ } while (character!='@');
+}
+
+// Function: swapCase
+// ---------------------------
+// Swaps the case of a latin ASCII character and prints an error if not one
+// s: the character inputted
+// Outputs: Nothing, the function just outputs the response
+
+void swapCase(char s) {
+ char New;
+ cout << "You entered " << s;
+ if ( (s >= 'a' && s <= 'z') || (s >= 'A' && s <= 'Z') ) {
+ cout << ", I respond with ";
+ if (s >= 'A' && s <= 'Z') {
+ New = s + 32; //32 is the difference between capital and lowercase ASCII characters
+ } else {
+ New= s - 32;
+ }
+ cout << New;
+ } else {
+ cout << ", which is not a valid character.";
+ }
+ cout << endl;
} \ No newline at end of file
diff --git a/ee1301/wk3/lab3/RootBabylon2.cpp b/ee1301/wk3/lab3/RootBabylon2.cpp
index c6daa37..1053cab 100644
--- a/ee1301/wk3/lab3/RootBabylon2.cpp
+++ b/ee1301/wk3/lab3/RootBabylon2.cpp
@@ -1,40 +1,40 @@
-#include <iostream>
-#include <iomanip>
-#include <cmath>
-using namespace std;
-
-double gennewGuess(double n, double old_guess) {
- double real, old;
- real=sqrt(n);
- double new_guess = ( old_guess + n / old_guess ) / 2;
- old=new_guess;
- if (((new_guess-real)/real)>0.01) { //This will be true if the difference between the real root and guess is more than 1%.
- // cout << old << endl;
- return gennewGuess(n, old);
- } else {
- // cout << old << endl;
- return new_guess;
- }
-}
-int main () {
- double temp;
- char cont;
- do {
- cout << "enter a value: ";
- cin >> temp;
- int n=temp;
- if (temp<=0) {
- cout << "Please enter a valid input(Positive Integer)." << endl;
- return sqrt(-1);
- }
- //cout << "Guessing..." << endl;
- temp = gennewGuess(temp, 1.0);
- cout << fixed << setprecision(0) << "square root of " << n << " is " << temp << endl
- << "continue? (y/n): ";
- cin >> cont;
- if (cont!='n'&&cont!='y') {
- return -1;
- }
-} while (cont!='n');
- // << "Actual Value: " << real << endl;
-}
+#include <iostream>
+#include <iomanip>
+#include <cmath>
+using namespace std;
+
+double gennewGuess(double n, double old_guess) {
+ double real, old;
+ real=sqrt(n);
+ double new_guess = ( old_guess + n / old_guess ) / 2;
+ old=new_guess;
+ if (((new_guess-real)/real)>0.01) { //This will be true if the difference between the real root and guess is more than 1%.
+ // cout << old << endl;
+ return gennewGuess(n, old);
+ } else {
+ // cout << old << endl;
+ return new_guess;
+ }
+}
+int main () {
+ double temp;
+ char cont;
+ do {
+ cout << "enter a value: ";
+ cin >> temp;
+ int n=temp;
+ if (temp<=0) {
+ cout << "Please enter a valid input(Positive Integer)." << endl;
+ return sqrt(-1);
+ }
+ //cout << "Guessing..." << endl;
+ temp = gennewGuess(temp, 1.0);
+ cout << fixed << setprecision(0) << "square root of " << n << " is " << temp << endl
+ << "continue? (y/n): ";
+ cin >> cont;
+ if (cont!='n'&&cont!='y') {
+ return -1;
+ }
+} while (cont!='n');
+ // << "Actual Value: " << real << endl;
+}
diff --git a/ee1301/wk3/lab3/RootBabylonOG.cpp b/ee1301/wk3/lab3/RootBabylonOG.cpp
index d0d8b39..530a1bf 100644
--- a/ee1301/wk3/lab3/RootBabylonOG.cpp
+++ b/ee1301/wk3/lab3/RootBabylonOG.cpp
@@ -1,34 +1,34 @@
-#include <iostream>
-#include <cmath>
-using namespace std;
-
-double gennewGuess(double n, double old_guess) {
- double new_guess = ( old_guess + ( n / old_guess ) ) / 2;
- return new_guess;
- }
-
-double BabylonRoot(double n) {
- double real, guess=1; //Initial guess is set to 1
- real=sqrt(n);
- do {
- guess = gennewGuess(n,guess);
- cout << guess << endl;
- } while (abs(guess-real)/real>0.01); //Keep guessing unitl within 1% of the actual square root
- return guess;
-}
-
-int main () {
- double n, guess;
- cout << "Enter the Number to find square root: ";
- cin >> n;
- if (n<=0) {
- cout << "Please enter a valid input(Positive Integer)." << endl;
- return 2;
- }
- cout << "Guessing..." << endl;
- double real=sqrt(n);
- guess = BabylonRoot(n);
- cout << "The Final Guess: " << guess << endl
- << "Actual Value: " << real << endl;
- return 0;
+#include <iostream>
+#include <cmath>
+using namespace std;
+
+double gennewGuess(double n, double old_guess) {
+ double new_guess = ( old_guess + ( n / old_guess ) ) / 2;
+ return new_guess;
+ }
+
+double BabylonRoot(double n) {
+ double real, guess=1; //Initial guess is set to 1
+ real=sqrt(n);
+ do {
+ guess = gennewGuess(n,guess);
+ cout << guess << endl;
+ } while (abs(guess-real)/real>0.01); //Keep guessing unitl within 1% of the actual square root
+ return guess;
+}
+
+int main () {
+ double n, guess;
+ cout << "Enter the Number to find square root: ";
+ cin >> n;
+ if (n<=0) {
+ cout << "Please enter a valid input(Positive Integer)." << endl;
+ return 2;
+ }
+ cout << "Guessing..." << endl;
+ double real=sqrt(n);
+ guess = BabylonRoot(n);
+ cout << "The Final Guess: " << guess << endl
+ << "Actual Value: " << real << endl;
+ return 0;
} \ No newline at end of file
diff --git a/ee1301/wk3/lab3/fib.cpp b/ee1301/wk3/lab3/fib.cpp
index 67ba8bb..57be3a2 100644
--- a/ee1301/wk3/lab3/fib.cpp
+++ b/ee1301/wk3/lab3/fib.cpp
@@ -1,21 +1,21 @@
-#include <iostream>
-using namespace std;
-int main()
-{
- unsigned long long fib1=0, fib2=1, count, fib3=1;
- cout << "How many Fibonacci numbers should be computed? ";
- cin >> count;
- bool firstRun=true;
- for (int i=1; i<(count+1); i++) {
- if (!firstRun) { //The contents are run when i is not 1.
- fib3=fib1+fib2;
- fib1=fib2;
- fib2=fib3;
- }
- firstRun=false;
- cout << fib3 << " ";
- if (i%10==0 && i!=0)
- cout << endl;
- }
- cout << endl;
-}
+#include <iostream>
+using namespace std;
+int main()
+{
+ unsigned long long fib1=0, fib2=1, count, fib3=1;
+ cout << "How many Fibonacci numbers should be computed? ";
+ cin >> count;
+ bool firstRun=true;
+ for (int i=1; i<(count+1); i++) {
+ if (!firstRun) { //The contents are run when i is not 1.
+ fib3=fib1+fib2;
+ fib1=fib2;
+ fib2=fib3;
+ }
+ firstRun=false;
+ cout << fib3 << " ";
+ if (i%10==0 && i!=0)
+ cout << endl;
+ }
+ cout << endl;
+}
diff --git a/ee1301/wk3/lab3/gcd.cpp b/ee1301/wk3/lab3/gcd.cpp
index e9c1801..4e127d9 100644
--- a/ee1301/wk3/lab3/gcd.cpp
+++ b/ee1301/wk3/lab3/gcd.cpp
@@ -1,36 +1,36 @@
-#include <iostream>
-#include <cmath>
-using namespace std;
-
-int GCD(int a, int b) {
- int gcd=1;
- a=abs(a); b=abs(b);
- if (a>b) {
- //do nothing
- } else {
- if (b>a) {
- int foo=a; a=b; b=foo;
- } else {
- return -1;
- }
- }
- gcd=(a%b);
- while (gcd!=0) {
- return GCD(b,gcd);
- }
- return b;
-
-}
-int main () {
- int a=0, b=0;
- char cont;
- do {
- cout << "enter two integer values: ";
- cin >> a >> b;
- cout << "greatest common divisor is: " << GCD(a,b) << endl;
- cout << "continue? (y/n): ";
- cin >> cont;
- cout << endl;
- } while (cont!='n');
-
-}
+#include <iostream>
+#include <cmath>
+using namespace std;
+
+int GCD(int a, int b) {
+ int gcd=1;
+ a=abs(a); b=abs(b);
+ if (a>b) {
+ //do nothing
+ } else {
+ if (b>a) {
+ int foo=a; a=b; b=foo;
+ } else {
+ return -1;
+ }
+ }
+ gcd=(a%b);
+ while (gcd!=0) {
+ return GCD(b,gcd);
+ }
+ return b;
+
+}
+int main () {
+ int a=0, b=0;
+ char cont;
+ do {
+ cout << "enter two integer values: ";
+ cin >> a >> b;
+ cout << "greatest common divisor is: " << GCD(a,b) << endl;
+ cout << "continue? (y/n): ";
+ cin >> cont;
+ cout << endl;
+ } while (cont!='n');
+
+}
diff --git a/ee1301/wk3/lab3/multTable.cpp b/ee1301/wk3/lab3/multTable.cpp
index 8e2e887..4253980 100644
--- a/ee1301/wk3/lab3/multTable.cpp
+++ b/ee1301/wk3/lab3/multTable.cpp
@@ -1,18 +1,18 @@
-#include <iostream>
-using namespace std;
-int main() {
- int r=1, c=1;
- for (r; r<=10; r++) {
- for (c=10; c>0; c--) {
- int ans = r*c;
- if (ans!=100) {
- cout << " ";
- }
- if (ans<10) {
- cout << " ";
- }
- cout << ans;
- }
- cout << endl;
- }
-}
+#include <iostream>
+using namespace std;
+int main() {
+ int r=1, c=1;
+ for (r; r<=10; r++) {
+ for (c=10; c>0; c--) {
+ int ans = r*c;
+ if (ans!=100) {
+ cout << " ";
+ }
+ if (ans<10) {
+ cout << " ";
+ }
+ cout << ans;
+ }
+ cout << endl;
+ }
+}
diff --git a/ee1301/wk3/lab3/mysteryBox.cpp b/ee1301/wk3/lab3/mysteryBox.cpp
index c409b7c..c1aefee 100644
--- a/ee1301/wk3/lab3/mysteryBox.cpp
+++ b/ee1301/wk3/lab3/mysteryBox.cpp
@@ -1,12 +1,12 @@
-#include <iostream>
-using namespace std;
-
-int main () {
- int sum = 0;
- for(int i=0; i<=100; i++)
- {
- if(i % 7 == 0)
- sum++;
- }
-cout << sum;
-}
+#include <iostream>
+using namespace std;
+
+int main () {
+ int sum = 0;
+ for(int i=0; i<=100; i++)
+ {
+ if(i % 7 == 0)
+ sum++;
+ }
+cout << sum;
+}
diff --git a/ee1301/wk3/lab3/primeFactor.cpp b/ee1301/wk3/lab3/primeFactor.cpp
index 0d0e8c1..093a0be 100644
--- a/ee1301/wk3/lab3/primeFactor.cpp
+++ b/ee1301/wk3/lab3/primeFactor.cpp
@@ -1,26 +1,26 @@
-#include <iostream>
-#include <cmath>
-using namespace std;
-
-void factorFinder (unsigned long long n) {
- unsigned long long i=2;
- while (pow(i,2)<=n) {
- if (n%i==0) {
- cout << i << "*";
- n/=i;
- } else {
- i++;
- }
- }
- if (n>1) {
- cout << n << endl;
- }
-}
-
-int main () {
- unsigned long long n;
- cout << "Input a positive integer: ";
- cin >> n;
- cout << "Factors: ";
- factorFinder(n);
-}
+#include <iostream>
+#include <cmath>
+using namespace std;
+
+void factorFinder (unsigned long long n) {
+ unsigned long long i=2;
+ while (pow(i,2)<=n) {
+ if (n%i==0) {
+ cout << i << "*";
+ n/=i;
+ } else {
+ i++;
+ }
+ }
+ if (n>1) {
+ cout << n << endl;
+ }
+}
+
+int main () {
+ unsigned long long n;
+ cout << "Input a positive integer: ";
+ cin >> n;
+ cout << "Factors: ";
+ factorFinder(n);
+}
diff --git a/ee1301/wk3/lab3/strap012_lab3_decimal_roman_conv.cpp b/ee1301/wk3/lab3/strap012_lab3_decimal_roman_conv.cpp
index 1049063..f6aa568 100644
--- a/ee1301/wk3/lab3/strap012_lab3_decimal_roman_conv.cpp
+++ b/ee1301/wk3/lab3/strap012_lab3_decimal_roman_conv.cpp
@@ -1,58 +1,58 @@
-//Matthew Strapp
-//5449340
-//20 February 2018
-//Lab 3 Workout
-
-#include <iostream>
-using namespace std;
-int main () {
- int decimal;
- cout << "Enter an integer value from 1 to 999: ";
- cin >> decimal;
- if (decimal<1 || decimal>999) {
- cout << " Invalid Input. Program terminated." << endl;
- return 1453;
- } else {
- cout << "Roman numeral equivalent: ";
- while (decimal!=0) {
- if (decimal>900 && decimal<1000) {
- cout << "CM"; decimal-=900;
- }
- if (decimal>=500 && decimal<900) {
- cout << "D"; decimal-=500;
- }
- if (decimal>=400 && decimal<500) {
- cout << "CD"; decimal-=400;
- }
- if (decimal>=100 && decimal<400) {
- cout << "C"; decimal-=100;
- }
- if (decimal>=90 && decimal<100) {
- cout << "XC"; decimal-=90;
- }
- if (decimal>=50 && decimal<90) {
- cout << "L"; decimal-=50;
- }
- if (decimal>=40 && decimal<50) {
- cout << "XL"; decimal-=40;
- }
- if (decimal>=10 && decimal<40) {
- cout << "X"; decimal-=10;
- }
- if (decimal==9) {
- cout << "IX"; decimal-=9;
- }
- if (decimal>=5 && decimal<9) {
- cout << "V"; decimal-=5;
- }
- if (decimal==4) {
- cout << "IV"; decimal-=4;
- }
- if (decimal>=1 && decimal<4) {
- cout << "I"; decimal-= 1;
- }
- }
- }
- cout << endl;
- return 0;
-}
+//Matthew Strapp
+//5449340
+//20 February 2018
+//Lab 3 Workout
+
+#include <iostream>
+using namespace std;
+int main () {
+ int decimal;
+ cout << "Enter an integer value from 1 to 999: ";
+ cin >> decimal;
+ if (decimal<1 || decimal>999) {
+ cout << " Invalid Input. Program terminated." << endl;
+ return 1453;
+ } else {
+ cout << "Roman numeral equivalent: ";
+ while (decimal!=0) {
+ if (decimal>900 && decimal<1000) {
+ cout << "CM"; decimal-=900;
+ }
+ if (decimal>=500 && decimal<900) {
+ cout << "D"; decimal-=500;
+ }
+ if (decimal>=400 && decimal<500) {
+ cout << "CD"; decimal-=400;
+ }
+ if (decimal>=100 && decimal<400) {
+ cout << "C"; decimal-=100;
+ }
+ if (decimal>=90 && decimal<100) {
+ cout << "XC"; decimal-=90;
+ }
+ if (decimal>=50 && decimal<90) {
+ cout << "L"; decimal-=50;
+ }
+ if (decimal>=40 && decimal<50) {
+ cout << "XL"; decimal-=40;
+ }
+ if (decimal>=10 && decimal<40) {
+ cout << "X"; decimal-=10;
+ }
+ if (decimal==9) {
+ cout << "IX"; decimal-=9;
+ }
+ if (decimal>=5 && decimal<9) {
+ cout << "V"; decimal-=5;
+ }
+ if (decimal==4) {
+ cout << "IV"; decimal-=4;
+ }
+ if (decimal>=1 && decimal<4) {
+ cout << "I"; decimal-= 1;
+ }
+ }
+ }
+ cout << endl;
+ return 0;
+}