Write a Java program that reads a student\'s name together with his or her test
ID: 3635670 • Letter: W
Question
Write a Java program that reads a student's name together with his or her test scores. The program should then compute the average test score for each student and assign the appropriate grade. The grade scale is as follows: 90-100,A; 80-89,B; 70-79,C; 60-69,D; 0-59,F;.Your program must use the following methods:
a: A value-returning method, calculateAverage, to determine and return the average of five test scores for each student. Use a loop to read and sum the five test scores.(The method does not output the average test score. That task must be done in the method main.)
b: A value-returning method, calculateGrade, to determine and return each student's grade. (This method does not output the grade. That task must be done in the method main.)
Test your Java program on the following data. Read the data from a file and send the output to a file. Do not use any global variables. Use the appropriate parameters to pass values in and out of methods.
Given names and grades to use is:
Johnson 85 83 77 91 76
Aniston 80 90 95 93 48
Cooper 78 81 11 90 73
Gupta 92 83 30 69 87
Blair 23 45 96 38 59
Clark 60 85 45 39 67
Kennedy 77 31 52 74 83
Bronson 93 94 89 77 97
Sunny 79 85 28 93 82
Smith 85 72 49 75 63
Explanation / Answer
please rate - thanks
import java.util.*;
import java.io.*;
public class Malik714
{static double average=0;
public static void main(String[] args)throwsFileNotFoundException
{int[] test=new int[5];
int i;
char grade;
String filename,name;
Scanner in = new Scanner(System.in);
System.out.println("Enter name of input file");
filename=in.next();
Scanner input=new Scanner(new File(filename));
System.out.println("Enter name of output file");
filename=in.next();
PrintStream output=new PrintStream(new File(filename));
output.println(" name test1 test2 test3 test4 test5 average grade");
while(input.hasNext())
{
name=input.next();
output.print(name+" ");
for(i=0;i<5;i++)
{test[i]=input.nextInt();
output.print(test[i]+" ");
}
calculateAverage(test);
output.print(average+" ");
grade=calculateGrade(average);
output.println(grade);
}
input.close();
output.close();
}
public static void calculateAverage(int test[])
{int i;
double total=0;
for(i=0;i<5;i++)
total+=test[i];
average=total/5;
return;
}
public static char calculateGrade(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';
}
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.