I just need an explanation as to how this program works, particularly at

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
100%

I just need an explanation as to how this program works, particularly at

"string* lastnames = new string[students];

    char* grades = new char[students]; " or the sort function for example.

, nothing needs to be added in it since it's complete and working.

The program is supposed to work as an average calculator for student's exams in which it takes student's last names, re-organizes them alphabetically, takes three of their scores finds the average and assigns a letter grade according to the average.

Program

#include<iostream>
#include<string>
using namespace std;

char getGrade(double average){
   if(average>=90)return 'A';
   else if(average>=80)return 'B';
   else if(average>=70)return 'C';
   else if(average>=60)return 'D';
   else return 'F';
}

void sort(string lastnames[] , char grades[], int n){
   for(int i=0;i<n;i++){
       for(int j=0; j<n-i-1;j++){
           if(lastnames[j].compare(lastnames[j+1])>0){
               string temp = lastnames[j];lastnames[j]=lastnames[j+1];lastnames[j+1]=temp;
               char t = grades[j];grades[j]=grades[j+1];grades[j+1]=t;
           }
       }
   }
}

int main(){

   int students; int s1,s2,s3;
   double average;
   cout<<"This is an automatic grade calculator. Please enter the number of students in the class:\n";
   cin >> students;
  
   string* lastnames = new string[students];
   char* grades = new char[students];
  
   cout<<"Enter each student’s last name, followed by their 3 test scores:\n";
   for(int i=0; i<students;i++){
       cin >> *(lastnames+i);
       cin >> s1 >> s2 >> s3;
       average = (s1+s2+s3)/3;
       *(grades+i) = getGrade(average);
   }
  
   sort(lastnames,grades,students);
   cout<<"Thanks. Here is the final grade sheet:\n";
   for(int i=0; i<students;i++){
       cout<<*(lastnames+i)   <<" " << *(grades+i) << endl;
   }
  
  

   return 0;
}

|C:\Users\User\Documents\C++\graer.exe
This is an automatic grade calculator. Please enter the number of students in the class:
Enter each studentÆs last name, followed by their 3 test scores:
Cree 95 90 95
Enlai 20 10 30
Daniel 40 80 90
Anna 40 60 80
Bodhi 80 10 90
Thanks. Here is the final grade sheet:
Anna D
Bodhi D
Cree A
Daniel C
Enlai F
Process exited after 14.91 seconds with return value 0
Press any key to continue .
Transcribed Image Text:|C:\Users\User\Documents\C++\graer.exe This is an automatic grade calculator. Please enter the number of students in the class: Enter each studentÆs last name, followed by their 3 test scores: Cree 95 90 95 Enlai 20 10 30 Daniel 40 80 90 Anna 40 60 80 Bodhi 80 10 90 Thanks. Here is the final grade sheet: Anna D Bodhi D Cree A Daniel C Enlai F Process exited after 14.91 seconds with return value 0 Press any key to continue .
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Array
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education