//****************************************************************** // Notices program // This program determines (1) a student's average based on three // test scores and (2) the student's passing/failing status //****************************************************************** #include #include // For setprecision() using namespace std; int main() { float average; // Average of three test scores long studentID; // Student's identification number int test1; // Score for first test int test2; // Score for second test int test3; // Score for third test bool dataOK; // True if data is correct cout << fixed << showpoint; // Set up floating pt. // output format // Get data cout << "Enter a Student ID number and three test scores:" << endl; cin >> studentID >> test1 >> test2 >> test3; cout << "Student number: " << studentID << " Test Scores: " << test1 << ", " << test2 << ", " << test3 << endl; // Test data if (test1 < 0 || test2 < 0 || test3 < 0) dataOK = false; else dataOK = true; if (dataOK) { // Calculate average average = float(test1 + test2 + test3) / 3.0; // Print message cout << "Average score is " << setprecision(2) << average << "--"; if (average >= 60.0) { cout << "Passing"; // Student is passing if (average < 70.0) cout << " but marginal"; // But marginal cout << '.' << endl; } else // Student is failing cout << "Failing." << endl; } else // Invalid data cout << "Invalid Data: Score(s) less than zero." << endl; return 0; }