Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Hello I am working on a GradedActivity program in Java. Any need would be greatl

ID: 3773750 • Letter: H

Question

Hello I am working on a GradedActivity program in Java. Any need would be greatly appreicated!!!

I need to add the averages of each of the four students averages:

Example of what the output should look like:

Anne Jones
12345
axs345@asu.edu
Grades: 85.0 97.0 86.0 92.0

Amy Brown
23456
axs345@asu.edu
Grades: 72.0 81.0 86.0 90.0

John smith
34567
axs345@asu.edu
Grades: 60.0 75.0 86.0 90.0

Ben Cartwright
45678
axs345@asu.edu
Grades: 90.0 87.0 82.0 79.0


Lab Average: 76.8
Midterm Average: 85.0
Essay Average: 85.0
Final Average: 87.8
Lab Highest: 90.0
Midterm Highest: 97.0
Essay Highest: 86.0
Final Highest: 92.0
Lab Lowest: 60.0
Midterm Lowest: 75.0
Essay Lowest: 82.0
Final Lowest: 79.0
Student 1 Cumulative Average: 90.9
Student 2 Cumulative Average: 82.9
Student 3 Cumulative Average: 78.7
Student 4 Cumulative Average: 84.2
Class Average: 84.2

Student Class:

package student;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;

public class Student {

private String first; // first name
private String last; // last name
private String email; // email address
private int studentID; // section number
public ArrayList<GradedActivity> grades;

public Student(String first, String last, String email, int studentID, ArrayList<GradedActivity> grades) {
this.first = first;
this.last = last;
this.email = email;
this.studentID = studentID;
this.grades = grades;
}

//printnig data
@Override
public String toString() {
return last+" "+first+" "+studentID+" "+email+" Grades: "+grades.get(0).getGrade()+" "+grades.get(1).getGrade()+" "+grades.get(2).getGrade()+" "+grades.get(3).getGrade();
}

public static void main(String[] args) {   
int N = 4;
Student[] students = new Student[N];
Scanner StdIn = new Scanner(System.in);
for (int i = 0; i < N; i++) {
System.out.println("Enter first name: ");
String first = StdIn.next();
System.out.println("Enter last name: ");
String last = StdIn.next();
System.out.println("Enter email: ");
String email = StdIn.next();
System.out.println("Enter ID: ");
int studentID = StdIn.nextInt();
//creating grade objects
ArrayList<GradedActivity> grades = new ArrayList<GradedActivity>();
System.out.println("Enter four scores: ");
for(int j=0;j<4;j++){
double score = StdIn.nextDouble();
GradedActivity obj = new GradedActivity();
obj.setScore(score);
grades.add(obj);
}
students[i] = new Student(first, last, email, studentID,grades);
}
  
for (int i = 0; i < N; i++) {
for (int j = i; j > 0; j--) {
if (students[j].studentID <(students[j - 1].studentID)) {
Student swap = students[j];
students[j] = students[j + 1];
students[j + 1] = swap;
}
}
}
for (int i = 0; i < N; i++) {
System.out.println(students[i]);
}
}
}

Analyzable Interface:

package student;

public interface Analyzable
{
public double getAverage();
GradedActivity getHighest();
GradedActivity getLowest();
public String toString();
public void setFinalExam(FinalExam aFinalExam);
public void setEssay(Essay anEssay);
public void setPassFailExam(PassFailExam aPassFailExam);
public void setLab(GradedActivity aLab);
  
  
}

CourseGrades Class:

package student;
public class CourseGrades implements Analyzable
{

private GradedActivity[] grades = new GradedActivity[4];

public void setLab(GradedActivity aLab)

{

grades[0] = aLab;

}

public void setPassFailExam(PassFailExam aPassFailExam)

{

grades[1]= aPassFailExam;

}

public void setEssay(Essay anEssay)

{

grades[2] = anEssay;

}

public void setFinalExam(FinalExam aFinalExam)

{

grades[3] = aFinalExam;

}

// String toSting method to set the string for output result

public String toString()

{

String str = "Lab Score: " + grades[0].getScore() +

" Grade: " + grades[0].getGrade() +

" Pass/Fail Exam Score: " + grades[1].getScore() +

" Grade: " + grades[1].getGrade() +

" Essay Score: " + grades[2].getScore() +

" Grade: " + grades[2].getGrade() +

" Final Exam Score: " + grades[3].getScore() +

" Grade: " + grades[3].getGrade();

return str;

}

@Override

public double getAverage()

{

double total = 0.0;

double avg = 0.0;

for(int i = 0; i< grades.length; i++)

total += grades[i].getGrade();

avg = total/grades.length;

return avg;

}

@Override

public GradedActivity getHighest()

{

GradedActivity highest = grades[0];

for(int i = 1; i < grades.length; i++)

{

if(grades[i].getGrade() < highest.getGrade())

highest = grades[i];

}

return highest;

}

@Override

public GradedActivity getLowest()

{

GradedActivity lowest = grades[0];

for(int i = 1; i < grades.length; i++)

{

if(grades[i].getGrade() >lowest.getGrade())

lowest = grades[i];

}

return lowest;

}

}

GradedActivity Class:

package student;
public class GradedActivity
{

private double score; // Numeric score

public void setScore(double s)

{

score = s;

}

public double getScore()

{

return score;

}

public char getGrade()

{

char letterGrade;

if (score >= 90)

letterGrade = 'A';

else if (score >= 80)

letterGrade = 'B';

else if (score >= 70)

letterGrade = 'C';

else if (score >= 60)

letterGrade = 'D';

else

letterGrade = 'F';

return letterGrade;

}

}

Essay Class:

package student;
public class Essay extends GradedActivity {

public int getEssay(int essay) {

return essay;

}
}

Final Exam Class:

package student;
class FinalExam extends GradedActivity{

int a, b;

FinalExam(int aa, int bb) {

a=aa;

b=bb;

setScore(a+b);

}

}

PassFailExam Class:

package student;
class PassFailExam extends GradedActivity{

int a;

int b;

int c;

PassFailExam(int aa, int bb, int cc) {

a=aa;

b=bb;

c=cc;

setScore(a+b+c);

}

}

Explanation / Answer

Answer:

complete code that yields saidoutput is as follows.

import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;

public class Student {

private String first; // first name
private String last; // last name
private String email; // email address
private int studentID; // section number
public ArrayList<GradedActivity> grades;

public Student(String first, String last, String email, int studentID, ArrayList<GradedActivity> grades) {
this.first = first;
this.last = last;
this.email = email;
this.studentID = studentID;
this.grades = grades;
}

//printnig data
@Override
public String toString() {
return first+" "+last+" "+studentID+" "+email+" Grades: "+grades.get(0).getScore()+" "+grades.get(1).getScore()+" "+grades.get(2).getScore()+" "+grades.get(3).getScore();
}

public static void main(String[] args) {
int N = 4;
Student[] students = new Student[N];
Scanner StdIn = new Scanner(System.in);
for (int i = 0; i < N; i++) {
System.out.println("Enter first name: ");
String first = StdIn.next();
System.out.println("Enter last name: ");
String last = StdIn.next();
System.out.println("Enter email: ");
String email = StdIn.next();
System.out.println("Enter ID: ");
int studentID = StdIn.nextInt();
//creating grade objects
ArrayList<GradedActivity> grades = new ArrayList<GradedActivity>();
System.out.println("Enter four scores: ");
for(int j=0;j<4;j++){
double score = StdIn.nextDouble();
GradedActivity obj = new GradedActivity();
obj.setScore(score);
grades.add(obj);
}
students[i] = new Student(first, last, email, studentID,grades);
}

for (int i = 0; i < N; i++) {
for (int j = i; j > 0; j--) {
if (students[j].studentID <(students[j - 1].studentID)) {
Student swap = students[j];
students[j] = students[j + 1];
students[j + 1] = swap;
}
}
}
for (int i = 0; i < N; i++) {
System.out.println(students[i]);
}
double t=0;
//finding Lab Average
for (int i = 0; i < N; i++)
{
t=t+students[i].grades.get(0).getScore();
}
System.out.println("Lab Average: "+t/N);

//finding Midterm Average
t=0;
for (int i = 0; i < N; i++)
{
t=t+students[i].grades.get(1).getScore();
}
System.out.println("Midterm Average: "+t/N);
//Finding Essay Average
t=0;
for (int i = 0; i < N; i++)
{
t=t+students[i].grades.get(2).getScore();
}
System.out.println("Essay Average: "+t/N);
//Finding Final Average
t=0;
for (int i = 0; i < N; i++)
{
t=t+students[i].grades.get(3).getScore();
}
System.out.println("Final Average: "+t/N);

GradedActivity Labhighest=students[0].grades.get(0);
GradedActivity midhighest=students[0].grades.get(1);
GradedActivity ehighest=students[0].grades.get(2);
GradedActivity fhighest=students[0].grades.get(3);

for(int i=1;i<N;i++)
{
if(students[i].grades.get(0).getScore()>Labhighest.getScore())
   Labhighest=students[i].grades.get(0);
if(students[i].grades.get(1).getScore()>midhighest.getScore())
   midhighest=students[i].grades.get(1);
if(students[i].grades.get(2).getScore()>ehighest.getScore())
   ehighest=students[i].grades.get(2);
if(students[i].grades.get(3).getScore()>fhighest.getScore())
   fhighest=students[i].grades.get(3);
}

System.out.println("Lab Highest:"+Labhighest.getScore());
System.out.println("Midterm Highest:"+midhighest.getScore());
System.out.println("Essay Highest:"+ehighest.getScore());
System.out.println("Final Highest:"+fhighest.getScore());


GradedActivity Lablowest=students[0].grades.get(0);
GradedActivity midlowest=students[0].grades.get(1);
GradedActivity elowest=students[0].grades.get(2);
GradedActivity flowest=students[0].grades.get(3);

for(int i=1;i<N;i++)
{
if(students[i].grades.get(0).getScore()<Lablowest.getScore())
   Lablowest=students[i].grades.get(0);
if(students[i].grades.get(1).getScore()<midlowest.getScore())
   midlowest=students[i].grades.get(1);
if(students[i].grades.get(2).getScore()<elowest.getScore())
   elowest=students[i].grades.get(2);
if(students[i].grades.get(3).getScore()<flowest.getScore())
   flowest=students[i].grades.get(3);
}

System.out.println("Lab lowest:"+Lablowest.getScore());
System.out.println("Midterm lowest:"+midlowest.getScore());
System.out.println("Essay lowest:"+elowest.getScore());
System.out.println("Final lowest:"+flowest.getScore());

double classTotal=0;
for(int i=0;i<N;i++)
{
double total=0;
for(int k=0;k<4;k++)
{
total=total+students[i].grades.get(k).getScore();
}
classTotal+=(total/4);
System.out.println("Student "+(i+1)+" Cumulative Average: "+total/4);
}

System.out.println("Class Average:"+classTotal/N);

}
}

interface Analyzable
{
public double getAverage();
GradedActivity getHighest();
GradedActivity getLowest();
public String toString();
public void setFinalExam(FinalExam aFinalExam);
public void setEssay(Essay anEssay);
public void setPassFailExam(PassFailExam aPassFailExam);
public void setLab(GradedActivity aLab);


}

class CourseGrades implements Analyzable
{

private GradedActivity[] grades = new GradedActivity[4];

public void setLab(GradedActivity aLab)

{

grades[0] = aLab;

}

public void setPassFailExam(PassFailExam aPassFailExam)

{

grades[1]= aPassFailExam;

}

public void setEssay(Essay anEssay)

{

grades[2] = anEssay;

}

public void setFinalExam(FinalExam aFinalExam)

{

grades[3] = aFinalExam;

}

// String toSting method to set the string for output result

public String toString()

{

String str = "Lab Score: " + grades[0].getScore() +

" Grade: " + grades[0].getGrade() +

" Pass/Fail Exam Score: " + grades[1].getScore() +

" Grade: " + grades[1].getGrade() +

" Essay Score: " + grades[2].getScore() +

" Grade: " + grades[2].getGrade() +

" Final Exam Score: " + grades[3].getScore() +

" Grade: " + grades[3].getGrade();

return str;

}

@Override

public double getAverage()

{

double total = 0.0;

double avg = 0.0;

for(int i = 0; i< grades.length; i++)

total += grades[i].getGrade();

avg = total/grades.length;

return avg;

}

public GradedActivity getHighest()

{

GradedActivity highest = grades[0];

for(int i = 1; i < grades.length; i++)

{

if(grades[i].getGrade() < highest.getGrade())

highest = grades[i];

}

return highest;

}


public GradedActivity getLowest()

{

GradedActivity lowest = grades[0];

for(int i = 1; i < grades.length; i++)

{

if(grades[i].getGrade() >lowest.getGrade())

lowest = grades[i];

}

return lowest;

}

}

class GradedActivity
{

private double score; // Numeric score

public void setScore(double s)

{

score = s;

}

public double getScore()

{

return score;

}

public char getGrade()

{

char letterGrade;

if (score >= 90)

letterGrade = 'A';

else if (score >= 80)

letterGrade = 'B';

else if (score >= 70)

letterGrade = 'C';

else if (score >= 60)

letterGrade = 'D';

else

letterGrade = 'F';

return letterGrade;

}

}

class Essay extends GradedActivity {

    public int getEssay(int essay) {

return essay;

}
    }


class FinalExam extends GradedActivity{

int a, b;

    FinalExam(int aa, int bb) {

        a=aa;

        b=bb;

         setScore(a+b);

    }

}

class PassFailExam extends GradedActivity{

int a;

int b;

int c;

    PassFailExam(int aa, int bb, int cc) {

       a=aa;

       b=bb;

       c=cc;

       setScore(a+b+c);

    }

}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote