summaryrefslogtreecommitdiffstats
path: root/C++/ExamAverage/Based
diff options
context:
space:
mode:
authormsglm <msglm@techchud.xyz>2023-01-14 05:31:48 -0600
committermsglm <msglm@techchud.xyz>2023-01-14 05:31:48 -0600
commit9d53d8857eaa1c9405894a88ca75bc4657e42f35 (patch)
treeeb1efc1d028b949dd83bb710c68be8eff58f26e7 /C++/ExamAverage/Based
downloadschool-code-master.tar.gz
school-code-master.tar.bz2
school-code-master.zip
Inital CommitHEADmaster
Diffstat (limited to 'C++/ExamAverage/Based')
-rw-r--r--C++/ExamAverage/Based/ExamAverage.cpp55
1 files changed, 55 insertions, 0 deletions
diff --git a/C++/ExamAverage/Based/ExamAverage.cpp b/C++/ExamAverage/Based/ExamAverage.cpp
new file mode 100644
index 0000000..b189b94
--- /dev/null
+++ b/C++/ExamAverage/Based/ExamAverage.cpp
@@ -0,0 +1,55 @@
+// Name: msglm
+// Introduction: Exam Average
+// Description: Calculates the average score between exams given exam scores.
+
+
+#include <iostream>
+#include <string>
+#include <vector>
+using namespace std;
+int main() {
+
+ float temporaryUserInput;
+ float totalScore = 0;
+ vector<float> testScores;
+
+ cout << "Please input your test scores: \nWhen finished, type any non-number input: \n";
+
+ //While loop that tests if temporaryUserInput is not valid input; terminate if not valid
+ while (1) {
+
+ //Cin that writes to temporaryUserInput
+ cin >> temporaryUserInput;
+
+ //if temporaryUserInput is a number, append temporaryUserInput to testScores & loop over
+ if(cin.fail() && testScores.size() == 0) {
+ cout << "You Terminated the program without giving proper input! Shame on You! \n";
+ return(1);
+ } else if (cin.fail()){
+ //otherwise, break the loop and move on to calculating averages
+ break;
+ } else {
+ //This is the point where the test scores are appended to and a loop happens
+ testScores.push_back(temporaryUserInput);
+ }
+ }
+
+ //for every number in the vector testScores, add that number to testScoresSum
+ for (int number = 0; number <= testScores.size(); number++) {
+ totalScore = totalScore + testScores[number];
+ }
+
+ //print the output of testScoresSum divided by the length of testScores
+ cout << "Your average score is: " << totalScore/testScores.size() << "%\n";
+
+}
+
+
+
+
+/*This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+ * You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.
+ */
+