aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortill-t <[email protected]>2021-11-02 13:15:03 -0700
committerGitHub <[email protected]>2021-11-02 13:15:03 -0700
commit309cae51841c5057e08dcf836a30c7033186fbda (patch)
tree13d188e4e88034df2fd9e353ef6d6b5ba67d20d9
parentThird Test for vim. (diff)
downloadcst116-lab5-till-t-309cae51841c5057e08dcf836a30c7033186fbda.tar.xz
cst116-lab5-till-t-309cae51841c5057e08dcf836a30c7033186fbda.zip
Add files via upload
-rw-r--r--main.cpp16
-rw-r--r--scores.h22
-rw-r--r--source.cpp84
3 files changed, 122 insertions, 0 deletions
diff --git a/main.cpp b/main.cpp
new file mode 100644
index 0000000..40fafc5
--- /dev/null
+++ b/main.cpp
@@ -0,0 +1,16 @@
+// Tyler Taormina
+#include "scores.h"
+
+
+int main()
+{
+ float currStudent[NUM_STUDENTS]{0.0};
+ char LetterGrades[NUM_STUDENTS];
+ float average_score = 0.0;
+
+ ReadScores(currStudent);
+ LetterGrade(LetterGrades, currStudent);
+ average_score = calcAverage(currStudent);
+ printInfo(currStudent, LetterGrades, average_score);
+ return 0;
+} \ No newline at end of file
diff --git a/scores.h b/scores.h
new file mode 100644
index 0000000..febb1a3
--- /dev/null
+++ b/scores.h
@@ -0,0 +1,22 @@
+//
+// Created by Till on 27-Oct-21.
+//
+
+#include <iostream>
+using namespace std;
+
+const int NUM_STUDENTS = 10;
+
+void ReadScores(float[]); //input scores from keyboard
+void LetterGrade(char[], float[]); //change score to letter grade and store in alt list
+float calcAverage(float[]); //calculate average score for students
+void printInfo(float[], char[], float avg); //display all info
+
+
+
+
+
+#ifndef GITDEMO_SCORES_H
+#define GITDEMO_SCORES_H
+
+#endif //GITDEMO_SCORES_H
diff --git a/source.cpp b/source.cpp
new file mode 100644
index 0000000..a4660ca
--- /dev/null
+++ b/source.cpp
@@ -0,0 +1,84 @@
+//
+// Created by Till on 27-Oct-21.
+//
+#include "scores.h"
+
+//creates array of student scores
+void ReadScores(float scores[])
+{
+ for (int i = 0; i < NUM_STUDENTS; i++)
+ {
+ cout << "Enter Score #" << i + 1 << " of " << NUM_STUDENTS << ": " << endl;
+ cin >> scores[i];
+ }
+}
+
+//creates array with list of letter grades for each student
+void LetterGrade(char let_grade[], float scores[])
+{
+ for (int i = 0; i < NUM_STUDENTS; i++) {
+ if (scores[i] >= 92.0) {
+ let_grade[i] = char(65); //A
+ } else if (scores[i] < 92.0 && scores[i] >= 84.0) {
+ let_grade[i] = char(66); //B
+ } else if (scores[i] < 84.0 && scores[i] >= 75.0) {
+ let_grade[i] = char(67); //C
+ } else if (scores[i] < 75.0 && scores[i] >= 65.0) {
+ let_grade[i] = char(68); //D
+ } else {
+ let_grade[i] = char(70); //F
+ }
+ }
+}
+
+
+//Calculate average score
+float calcAverage (float scores[]) {
+ float average = 0.0, total = 0.0;
+
+ for (int i = 0; i < NUM_STUDENTS; i++) {
+ total += scores[i];
+ }
+ average = total / NUM_STUDENTS;
+ return average;
+}
+
+
+//Displays all info
+void printInfo(float scores[], char LetterGrades[],float avg)
+{
+ int A_grade = 0, B_grade = 0, C_grade = 0, D_grade = 0, F_grade = 0;
+
+ //display score and letter grade for each student
+ for (int i = 0; i < NUM_STUDENTS; i++)
+ {
+ cout << "Student " << i + 1 << " Letter Grade: " << LetterGrades[i];
+ cout << " and Score: " << scores[i] << endl;
+
+ }
+
+ // calculate number of each letter grade
+ for (int i = 0; i < NUM_STUDENTS; i++) {
+ if (scores[i] >= 92.0) {
+ A_grade += 1; //A
+ } else if (scores[i] < 92.0 && scores[i] >= 84.0) {
+ B_grade += 1; //B
+ } else if (scores[i] < 84.0 && scores[i] >= 75.0) {
+ C_grade += 1; //C
+ } else if (scores[i] < 75.0 && scores[i] >= 65.0) {
+ D_grade += 1; //D
+ } else {
+ F_grade += 1; //F
+ }
+ }
+
+ cout << endl;
+ cout << endl;
+ cout << "Class Average: " << avg << endl;
+
+ cout << "A's: " << A_grade << endl;
+ cout << "B's: " << B_grade << endl;
+ cout << "C's: " << C_grade << endl;
+ cout << "D's: " << D_grade << endl;
+ cout << "F's: " << F_grade << endl;
+} \ No newline at end of file