#include #include #include #include   using namespace std;   class Movie  { private:     string title = "";     int year = 0; public:     void set_title(string title_param);     string get_title() const;           // "const" safeguards class variable changes within function     string get_title_upper() const;     void set_year(int year_param);     int get_year() const;   };           // NOTICE: Class declaration ends with semicolon!   void Movie::set_title(string title_param)  {     title = title_param; }   string Movie::get_title() const  {     return title; }   string Movie::get_title_upper() const  {     string title_upper;     for (char c : title) {         title_upper.push_back(toupper(c));     }     return title_upper; }   void Movie::set_year(int year_param)  {     year = year_param; }   int Movie::get_year() const  {     return year; }     int main()  {     cout << "The Movie List program\n\n"          << "Enter a movie...\n\n";       // get vector of Movie objects     vector movies;     char another = 'y';     while (tolower(another) == 'y')      {         Movie movie;           string title;         cout << "Title: ";         getline(cin, title);         movie.set_title(title);           int year;         cout << "Year: ";         cin >> year;         movie.set_year(year);           movies.push_back(movie);           cout << "\nEnter another movie? (y/n): ";         cin >> another;         cin.ignore();         cout << endl;     }       // display the movies     const int w = 10;     cout << left         << setw(w * 3) << "TITLE"         << setw(w) << "YEAR" << endl;          for (Movie movie : movies)      {         cout << setw(w * 3) << movie.get_title()             << setw(w) << movie.get_year() << endl;     }       cout << endl;       // Output with titles in ALL CAPS     for (Movie movie : movies)     {         cout << setw(w * 3) << movie.get_title_upper()             << setw(w) << movie.get_year() << endl;     }       cout << endl;       return 0; }   Using the attached code as a "model", write a program where each student record is constructed using the class StudentRec. The variables in this case are "private" and the functions are "public." Note:  only the first_name and last_name variables will require "getter" functions that return the name in all caps:    get_first_name_upper() and get_last_name_upper() functions.    Your class declaration section should look something like this:   class StudentRec { private: string last_name = "";          // Last name string first_name = "";         // First name int year_grad = 0;                  // Year expected to graduate float gpa = 0.0;                       // Current gpa public: void set_last_name(string last_name_param); string get_last_name() const; string get_last_name_upper() const;          // the rest of the "setter" and "getter" functions for each variable above go here       };       // NOTE: a class declaration ends with a semicolon   The program should ask for the data to fill a studentRec of structure StudentRec and then ask y/n if they want to add another studentRec. Each studentRec will go into the vector of type StudentRec called student_list. After the student records have been entered into the vector student_list, find the average gpa of all the students in the vector. Output all the student records and give the average gpa for the students. Use the iomanip tools to make the data look as nice a possible. Write excellent comments:

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question
#include <iostream>
#include <iomanip>
#include <string>
#include <vector>
 
using namespace std;
 
class Movie 
{
private:
    string title = "";
    int year = 0;
public:
    void set_title(string title_param);
    string get_title() const;           // "const" safeguards class variable changes within function
    string get_title_upper() const;
    void set_year(int year_param);
    int get_year() const;
 
};           // NOTICE: Class declaration ends with semicolon!
 
void Movie::set_title(string title_param) 
{
    title = title_param;
}
 
string Movie::get_title() const 
{
    return title;
}
 
string Movie::get_title_upper() const 
{
    string title_upper;
    for (char c : title) {
        title_upper.push_back(toupper(c));
    }
    return title_upper;
}
 
void Movie::set_year(int year_param) 
{
    year = year_param;
}
 
int Movie::get_year() const 
{
    return year;
}
 
 
int main() 
{
    cout << "The Movie List program\n\n"
         << "Enter a movie...\n\n";
 
    // get vector of Movie objects
    vector<Movie> movies;
    char another = 'y';
    while (tolower(another) == 'y') 
    {
        Movie movie;
 
        string title;
        cout << "Title: ";
        getline(cin, title);
        movie.set_title(title);
 
        int year;
        cout << "Year: ";
        cin >> year;
        movie.set_year(year);
 
        movies.push_back(movie);
 
        cout << "\nEnter another movie? (y/n): ";
        cin >> another;
        cin.ignore();
        cout << endl;
    }
 
    // display the movies
    const int w = 10;
    cout << left
        << setw(w * 3) << "TITLE"
        << setw(w) << "YEAR" << endl;
    
    for (Movie movie : movies) 
    {
        cout << setw(w * 3) << movie.get_title()
            << setw(w) << movie.get_year() << endl;
    }
 
    cout << endl;
 
    // Output with titles in ALL CAPS
    for (Movie movie : movies)
    {
        cout << setw(w * 3) << movie.get_title_upper()
            << setw(w) << movie.get_year() << endl;
    }
 
    cout << endl;
 
    return 0;
}
 
  • Using the attached code as a "model", write a program where each student record is constructed using the class StudentRec.
    • The variables in this case are "private" and the functions are "public."
    • Note:  only the first_name and last_name variables will require "getter" functions that return the name in all caps

 

get_first_name_upper() and get_last_name_upper() functions. 

 

  • Your class declaration section should look something like this:

 

class StudentRec

{

private:

string last_name = "";          // Last name

string first_name = "";         // First name

int year_grad = 0;                  // Year expected to graduate

float gpa = 0.0;                       // Current gpa

public:

void set_last_name(string last_name_param);

string get_last_name() const;

string get_last_name_upper() const;    

    

// the rest of the "setter" and "getter" functions for each variable above go here

  

  

};       // NOTE: a class declaration ends with a semicolon

 

  • The program should ask for the data to fill a studentRec of structure StudentRec and then ask y/n if they want to add another studentRec.
    • Each studentRec will go into the vector of type StudentRec called student_list.
  • After the student records have been entered into the vector student_list, find the average gpa of all the students in the vector.
  • Output all the student records and give the average gpa for the students. Use the iomanip tools to make the data look as nice a possible.
  • Write excellent comments:
Expert Solution
Step 1

We will create a structure named StudentRec and then we will add students records accordingly and then we will display all the students data . To find the average of the students gpa we will create a vector named gpa which will contains all the gpa scored by students and then we will find the average gpa of all the students and display the average gpa. Below is the solution for the given question

trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Similar questions
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY