Programming Tutorials

Comment on Tutorial - How to use ArrayList in Java By Hong



Comment Added by : carl

Comment Added at : 2011-01-30 22:21:21

Comment on Tutorial : How to use ArrayList in Java By Hong
i want my program to allow more than one trainee’s marks to be entered, and then print the results for each trainee at the
end of the program, rather than after each trainee’s marks have been entered.i got stuck and need your help


import java.util.Scanner;
public class InstructionalModulesResult {
private static int firstint,intModuleQuizMark, noOfQuiz;
private static String lastString, fistString,stringMode;
private static double [] QuizMark;
static char letterGrade;
public static void main(String[] args) {
boolean vinto=true;
String ans;
int tNum=0, nOfQuiz;
double [] quizMark;
double finalModule, avgMark, sumMark=0, overallMark;
String famName, firName, instModule;
char markGrade;
boolean found=false;
Scanner in = new Scanner(System.in);
Scanner inStr = new Scanner(System.in);
for(int i=1;(!found);i++)
{
System.out.print("Trainee Number: ");
tNum=in.nextInt();
if ((tNum<=1000) || (tNum>=9999))
System.out.println("Invalid Number - Please re-enter ");
else
found=true;
}
System.out.print("Family Name: ");
famName =inStr.nextLine();
System.out.print("First Name: ");
firName =inStr.nextLine();
System.out.print("Instruction Module: ");
instModule =inStr.nextLine();
System.out.print("How many quizes shall i calculate?: ");
nOfQuiz =in.nextInt();
quizMark = new double [nOfQuiz];
for(int k=0; k<nOfQuiz;k++)
{
System.out.print("Module Quiz mark "+(k+1)+": ");
tNum=in.nextInt();
if ((tNum<=1) || (tNum>=100))
System.out.println("invalid Quiz mark, please re-enter a valid quiz mark not above 100");
else
found=true;
quizMark[k]=in.nextDouble();
}
System.out.print("Final Module Test mark: ");
finalModule = in.nextDouble();

System.out.print("Another [Y/N]?");
ans=in.nextLine();
if(ans=="Y")vinto=true;

else
vinto=false;
{
for (int k=0; k<nOfQuiz; k++)
{
sumMark = sumMark + quizMark[k];
}
avgMark =(sumMark)/nOfQuiz;
overallMark = (avgMark*0.20)+(finalModule*0.80);
markGrade = grade(overallMark);
System.out.println("Results for " + firName+" "+famName);
System.out.println("Trainee Number " + tNum);
System.out.println("Module: " + instModule);
System.out.println("Average Module Quiz: " + avgMark +" Final Module Test: " + finalModule+ " Overall Mark: " +overallMark);
System.out.println("Letter Grade: " + markGrade);
}
}

private static char grade (double graded) {
if (graded>=70)
letterGrade = 'A';
else if (graded>=60)
letterGrade = 'B';
else if (graded>=50)
letterGrade = 'C';
else if (graded>=40)
letterGrade = 'D';
else if (graded<=39 )
letterGrade = 'E';
return letterGrade;



}
}


View Tutorial