aboutsummaryrefslogtreecommitdiffstats
path: root/ee1301/wk4
diff options
context:
space:
mode:
Diffstat (limited to 'ee1301/wk4')
-rw-r--r--ee1301/wk4/hw4_directory/strap012_HW4A.cpp59
-rw-r--r--ee1301/wk4/hw4_directory/strap012_HW4B.cpp51
-rw-r--r--ee1301/wk4/hw4_directory/strap012_HW4C.cpp71
3 files changed, 181 insertions, 0 deletions
diff --git a/ee1301/wk4/hw4_directory/strap012_HW4A.cpp b/ee1301/wk4/hw4_directory/strap012_HW4A.cpp
new file mode 100644
index 0000000..482addf
--- /dev/null
+++ b/ee1301/wk4/hw4_directory/strap012_HW4A.cpp
@@ -0,0 +1,59 @@
+/*
+13 March 2019
+Matthew Strapp
+5449340
+EE1301
+Spring 2019
+Homework 4A
+Making the Grade
+*/
+
+#include <iostream>
+#include <fstream>
+std::ifstream fin;
+std::ofstream fout;
+
+int main () {
+ int score, A, B, C, D, F;
+ A = B = C = D = F = 0;
+ std::string garbage; //Everything except the number is unneeded garbage.
+ fin.open("input_files/grades.txt");
+ if (!fin.is_open() ) {
+ std::cout << "File read failed!\n";
+ return -1;
+ }
+ fout.open("output_files/statistics.csv");
+ if (!fout.is_open())
+ {
+ std::cout << "File write failed!\n";
+ return -2;
+ }
+
+ while (fin >> garbage >> garbage >> score) {
+ getline(fin, garbage); //Any decimals are not needed and will be culled
+ if (score>90) {
+ A++;
+ } else if (score>80) {
+ B++;
+ } else if (score>70) {
+ C++;
+ } else if (score>60) {
+ D++;
+ } else {
+ F++;
+ }
+ }
+ std::cout << A << " A" << std::endl
+ << B << " B" << std::endl
+ << C << " C" << std::endl
+ << D << " D" << std::endl
+ << F << " F" << std::endl;
+ fin.close();
+ fout << "Grade, NumStudents" << std::endl
+ << "A," << A << std::endl
+ << "B," << B << std::endl
+ << "C," << C << std::endl
+ << "D," << D << std::endl
+ << "F," << F;
+ fout.close();
+} \ No newline at end of file
diff --git a/ee1301/wk4/hw4_directory/strap012_HW4B.cpp b/ee1301/wk4/hw4_directory/strap012_HW4B.cpp
new file mode 100644
index 0000000..b421341
--- /dev/null
+++ b/ee1301/wk4/hw4_directory/strap012_HW4B.cpp
@@ -0,0 +1,51 @@
+/*
+13 March 2019
+Matthew Strapp
+5449340
+EE1301
+Spring 2019
+Homework 4B
+Grade Distribution
+*/
+
+#include <iostream>
+#include <fstream>
+std::ifstream fin;
+std::ofstream fout;
+
+int main()
+{
+ std::string Useless;
+ char letter, garbage;
+ int Count, hiCount=0;
+ fin.open("output_files/statistics.csv");
+ if (!fin.is_open()) {
+ std::cout << "File read failed!\n";
+ return -1;
+ }
+ fout.open("output_files/histogram.txt");
+ if (!fout.is_open()) {
+ std::cout << "File write failed!\n";
+ return -2;
+ }
+ fin >> Useless >> Useless; //The first line in the file is useless
+ while (fin >> letter >> garbage >> Count) { //The letter and the number of people in that grade is important, the comma is not
+ fout << " " << letter;
+ if (Count>hiCount) {
+ hiCount=Count;
+ }
+ for (int i=Count; i>0; i--) {
+ fout << " X";
+ }
+ fout << std::endl;
+ }
+ fin.close();
+ for (int h=0; h<=(hiCount+1); h++) {
+ fout << "==";
+ }
+ fout << std::endl << " ";
+ for (int j=1; j<=hiCount; j++) {
+ fout << " " << j;
+ }
+ fout.close();
+} \ No newline at end of file
diff --git a/ee1301/wk4/hw4_directory/strap012_HW4C.cpp b/ee1301/wk4/hw4_directory/strap012_HW4C.cpp
new file mode 100644
index 0000000..85c0aa5
--- /dev/null
+++ b/ee1301/wk4/hw4_directory/strap012_HW4C.cpp
@@ -0,0 +1,71 @@
+/*
+13 March 2019
+Matthew Strapp
+5449340
+EE1301
+Spring 2019
+Homework 4C
+Most Popular Vowel
+*/
+
+#include <iostream>
+#include <fstream>
+std::ifstream fin;
+std::ofstream fout;
+
+int main()
+{
+ char Char, winner;
+ int A=0, E=0, I=0, O=0, U=0;
+ fin.open("input_files/blahblah.txt");
+ if (!fin.is_open()) {
+ std::cout << "File read failed!\n";
+ return -1;
+ }
+ fout.open("output_files/election_results.txt");
+ if (!fout.is_open())
+ {
+ std::cout << "File write failed!\n";
+ return -2;
+ }
+ while (fin >> Char) {
+ if (Char=='A' || Char=='a') {
+ A++;
+ } if (Char=='E' || Char=='e') {
+ E++;
+ } if (Char=='I' || Char=='i') {
+ I++;
+ } if (Char=='O' || Char=='o') {
+ O++;
+ } if (Char=='U' || Char=='u') {
+ U++;
+ }
+ } fin.close();
+ //This bit compares to see which vowel wins.
+ if (A>E && A>I && A>O && A>U)
+ { winner = 'A'; }
+ if (E > A && E > I && E > O && E > U)
+ { winner = 'E'; }
+ if (I > E && I > A && I > O && I > U)
+ { winner = 'I'; }
+ if (O > E && O > I && O > A && O > U)
+ { winner = 'O'; }
+ if (U > E && U > I && U > O && U > A)
+ { winner = 'U'; }
+
+ std::cout << "The results are in!" << std::endl
+ << "A/a received " << A << " votes" << std::endl
+ << "E/e received " << E << " votes" << std::endl
+ << "I/i received " << I << " votes" << std::endl
+ << "O/o received " << O << " votes" << std::endl
+ << "U/u received " << U << " votes" << std::endl
+ << "The winner is the letter \"" << winner
+ << "\"!" << std::endl;
+
+ fout << "A," << A << std::endl
+ << "E," << E << std::endl
+ << "I," << I << std::endl
+ << "O," << O << std::endl
+ << "U," << U;
+ fout.close();
+} \ No newline at end of file