Computer Networking: A Top-Down Approach (7th Edition)
Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN: 9780133594140
Author: James Kurose, Keith Ross
Publisher: PEARSON
Bartleby Related Questions 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.

NOTE: DON'T USE STRUCTURE. USE CLASSES

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