diff options
Diffstat (limited to '')
-rw-r--r-- | ee1301/wk3/hw3_directory/strap012_HW3A.cpp | 122 | ||||
-rw-r--r-- | ee1301/wk3/hw3_directory/strap012_HW3B.cpp | 128 | ||||
-rw-r--r-- | ee1301/wk3/hw3_directory/strap012_HW3C.cpp | 100 |
3 files changed, 175 insertions, 175 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 |