Code is given below:
Explanation:
Please enter the file name containing the list of classes: sched.txt
Schedule file loaded. Displaying contents ...
Course name: CPSC 131
Location: EC 109
Weekly schedule: MW
Start time: 16:00
End time: 17:15
Course name: CPSC 481
Location: CS 408
Weekly schedule: MW
Start time: 16:00
End time: 17:15
Course name: CPSC 362
Location: CS 101
Weekly schedule: MW
Start time: 8:00
End time: 9:50
Thank you for using Tuffy Scheduler.
Start time happens after end time
cources.txt
CPSC 131,EC 109,MW,16:00,17:15
CPSC 481,CS 408,MW,16:00,17:15
CPSC 362,CS 101,MW,8:00,9:50
#include <iostream>
#include <fstream>
#include <sstream>
#include<vector>
using namespace std;
class Course {
private:
 std::string course_name_;
 std::string location_;
 std::string weekly_schedule_;
 int start_time_;
 int end_time_;
public:
 const std::string& getCourseName() const {
   return course_name_;
 }
 void setCourseName(const std::string& courseName) {
   course_name_ = courseName;
 }
 const std::string getEndTime() const {
   std::string st = to_string(end_time_);
   std::string st2 = st.substr(st.length() - 2);
   //cout << st2 << '\n';
   size_t found = st.find(st2);
   std::string st1 = st.substr(0, found);
   std::string st3 = st1 + ":" + st2;
   return st3;
 }
 void setEndTime(int endTime) {
   end_time_ = endTime;
 }
 const std::string& getLocation() const {
   return location_;
 }
 void setLocation(const std::string& location) {
   location_ = location;
 }
 const std::string getStartTime() const {
   std::string st = to_string(start_time_);
   std::string st2 = st.substr(st.length() - 2);
   //cout << st2 << '\n';
   size_t found = st.find(st2);
   std::string st1 = st.substr(0, found);
   std::string st3 = st1 + ":" + st2;
   return st3;
 }
 void setStartTime(int startTime) {
   start_time_ = startTime;
 }
 const std::string& getWeeklySchedule() const {
   return weekly_schedule_;
 }
 void setWeeklySchedule(const std::string& weeklySchedule) {
   weekly_schedule_ = weeklySchedule;
 }
 void display() {
   cout << "Course name: " << course_name_ << endl;
   cout << "Location: " << location_ << endl;
   cout << "Weekly schedule: " << weekly_schedule_ << endl;
   cout << "Start time:" << getStartTime() << endl;
   cout << "End time:" << getEndTime() << endl;
 }
};
bool load_schedule(std::string fileName, Course (&courses)[100], int& curSize);
int main() {
 cout << "Welcome to Tuffy Scheduler!" << endl;
 cout << "Please enter the file name containing the list of classes:"
     << endl;
 std::string fileName;
 Course courses[100];
 int curSize = 0;
 cin >> fileName; // provide complete path ex D:\\Chegg\\CheggCpp\\src\\cources.txt
 if (load_schedule(fileName, courses, curSize)) {
   cout << "Schedule file loaded. Displaying contents ..." << endl<<endl;
   int i;
   //cout << curSize << '\n';
   for (i = 0; i < curSize; i++) {
     courses[i].display();
     cout << endl;
   }
   cout << "Thank you for using Tuffy Scheduler."<< endl;
   cout << "Start time happens after end time"<< endl;
 } else {
   cout << "Invalid file" << endl;
 }
 return 0;
}
bool load_schedule(std::string fileName, Course (&courses)[100], int& curSize) {
 ifstream myfile(fileName);
 string line;
 //cout << fileName << '\n';
 if (myfile.is_open()) {
   while (getline(myfile, line)) {
     stringstream ss(line);
     vector<string> v;
     while (ss.good()) {
       string substr;
       getline(ss, substr, ',');
       v.push_back(substr);
     }
     Course c;
     c.setCourseName(v[0]);
     c.setLocation(v[1]);
     c.setWeeklySchedule(v[2]);
     if (v[2] != "MW") {
       cout << "Error: Invalid weekly schedule symbol " << v[2]
           << '\n';
       return false;
     }
     //set start time
     string startTime = v[3];
     size_t found = startTime.find(":");
     startTime.erase(found, 1);
     //cout << startTime << '\n';
     stringstream st(startTime);
     int startTimeInt = 0;
     st >> startTimeInt;
     c.setStartTime(startTimeInt);
     //set end time
     string endTime = v[4];
     found = endTime.find(":");
     endTime.erase(found, 1);
     // cout << endTime << '\n';
     stringstream st1(endTime);
     int endTimeInt = 0;
     st1 >> endTimeInt;
     c.setEndTime(endTimeInt);
     if (startTimeInt > endTimeInt) {
       cout << "Error: The start time " << startTimeInt
           << "should happen before the end time " << endTimeInt
           << '\n';
       return false;
     }
     courses[curSize] = c;
     curSize++;
     //cout << curSize << '\n';
   }
   myfile.close();
 }
 return true;
}