Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*;
- public class FinalProject {
- public static String [][] matrix = new String [21][10];
- public static Scanner sc = new Scanner(System.in);
- public static void main(String[] args) {
- matrix[0][0]="Students";
- matrix[0][1]="Homework 1";
- matrix[0][2]="Homework 2";
- matrix[0][3]="Homework 3";
- matrix[0][4]="Homework 4";
- matrix[0][5]="First Exam";
- matrix[0][6]="Second Exam";
- matrix[0][7]="Final Project";
- matrix[0][8]="Final Exam";
- matrix[0][9]="Final Grade";
- for(int i=1;i<21;i++){
- matrix[i][0]="empty";
- for(int j=1;j<10;j++)
- matrix[i][j]="0";
- }
- int option = 0;
- while (option != 7){
- System.out.println ("***************************************\n"+
- "1.- Enter student information.\n"+
- "2.- Enter student grades. \n"+
- "3.- Student grade report.\n"+
- "4.- Activity grade report.\n"+
- "5.- Group performance.\n"+
- "6.- Print matrix.\n"+
- "7.- Exit Menu\n"+
- "***************************************\n");
- option = sc.nextInt();
- switch(option){
- case 1:
- studentInformation();
- break;
- case 2:
- studentGrades();
- break;
- case 3:
- studentReport();
- break;
- case 4:
- activityReport();
- break;
- case 5:
- groupPerformance();
- break;
- case 6:
- printMatrix();
- break;
- }
- }
- }
- public static void studentInformation(){
- System.out.print("Select the number of the student you want (1-20) you can type 0 if you don't know the number you are at: ");
- int student = sc.nextInt();
- System.out.print("Enter student name: ");
- String name = sc.next();
- if(student != 0){
- matrix[student][0] = name;
- }
- else{
- int indice = -1;
- for (int i = 0; i < matrix.length; i++) {
- if( "empty".equals(matrix[i][0])){
- indice = i;
- break;
- }
- }
- if(indice != -1){
- matrix[indice][0] = name;
- }
- else{
- System.out.println("The matrix is full.");
- }
- }
- }
- public static void studentGrades(){
- System.out.print("Select the number of the student you want: ");
- int student = sc.nextInt();
- System.out.println ("***************************************\n"+
- "Select the action you want: \n"+
- "1.- Enter 1st homework grade. \n"+
- "2.- Enter 2nd homework grade. \n"+
- "3.- Enter 3rd homework grade. \n"+
- "4.- Enter 4th homework grade. \n"+
- "5.- Enter 1st exam grade. \n"+
- "6.- Enter 2nd exam grade. \n"+
- "7.- Enter final project grade. \n"+
- "8.- Enter final exam grade. \n"+
- "***************************************\n");
- int option = sc.nextInt();
- switch(option){
- case 1:
- System.out.print("Enter grade: ");
- String hw1 = sc.next();
- matrix[student][1] = hw1;
- break;
- case 2:
- System.out.print("Enter grade: ");
- String hw2 = sc.next();
- matrix[student][2] = hw2;
- break;
- case 3:
- System.out.print("Enter grade: ");
- String hw3 = sc.next();
- matrix[student][3] = hw3;
- break;
- case 4:
- System.out.print("Enter grade: ");
- String hw4 = sc.next();
- matrix[student][4] = hw4;
- break;
- case 5:
- System.out.print("Enter grade: ");
- String ex1 = sc.next();
- matrix[student][5] = ex1;
- break;
- case 6:
- System.out.print("Enter grade: ");
- String ex2 = sc.next();
- matrix[student][6] = ex2;
- break;
- case 7:
- System.out.print("Enter grade: ");
- String fp = sc.next();
- matrix[student][7] = fp;
- break;
- case 8:
- System.out.print("Enter grade: ");
- String fe = sc.next();
- matrix[student][8] = fe;
- break;
- }
- }
- public static void studentReport(){
- System.out.print("Select the number of the student you want: ");
- int student = sc.nextInt();
- System.out.println ("***************************************\n"+
- "Select the action you want to perform:\n"+
- "1.- Final score. \n"+
- "2.- Activity scores. \n"+
- "***************************************\n");
- int option = sc.nextInt();
- if(option == 2){
- System.out.println ("***************************************\n"+
- "Select the activity you want to print: \n"+
- "1.- 1st homework grade. \n"+
- "2.- 2nd homework grade. \n"+
- "3.- 3rd homework grade. \n"+
- "4.- 4th homework grade. \n"+
- "5.- 1st exam grade. \n"+
- "6.- 2nd exam grade. \n"+
- "7.- Final project grade. \n"+
- "8.- Final exam grade. \n"+
- "***************************************\n");
- int option2 = sc.nextInt();
- switch(option2){
- case 1:
- System.out.print("The 1st homework grade for " + matrix[student][0] + " is: " + matrix[student][1]);
- break;
- case 2:
- System.out.print("The 2nd homework grade for " + matrix[student][0] + " is: " + matrix[student][2]);
- break;
- case 3:
- System.out.print("The 3rd homework grade for " + matrix[student][0] + " is: " + matrix[student][3]);
- break;
- case 4:
- System.out.print("The 4th homework grade for " + matrix[student][0] + " is: " + matrix[student][4]);
- break;
- case 5:
- System.out.print("The 1st exam grade for " + matrix[student][0] + " is: " + matrix[student][5]);
- break;
- case 6:
- System.out.print("The 2nd exam grade for " + matrix[student][0] + " is: " + matrix[student][6]);
- break;
- case 7:
- System.out.print("The final project grade for " + matrix[student][0] + " is: " + matrix[student][7]);
- break;
- case 8:
- System.out.print("The final exam grade for " + matrix[student][0] + " is: " + matrix[student][8]);
- break;
- }
- }
- else {
- String grade = finalGrade(student);
- System.out.println("The final grade of " + matrix[student][0] + " is: " + grade);
- }
- }
- public static void activityReport(){
- System.out.println ("***************************************\n"+
- "Select the number of the activity you want:\n"+
- "1.- 1st homework grade. \n"+
- "2.- 2nd homework grade. \n"+
- "3.- 3rd homework grade. \n"+
- "4.- 4th homework grade. \n"+
- "5.- 1st exam grade. \n"+
- "6.- 2nd exam grade. \n"+
- "7.- Final project grade. \n"+
- "8.- Final exam grade. \n"+
- "***************************************\n");
- int activity = sc.nextInt();
- System.out.println ("***************************************\n"+
- "Select the action youw ant to perform:\n"+
- "1.- Activity Average. \n"+
- "2.- Activity Variance. \n"+
- "3.- Activity Standard Deviation. \n"+
- "***************************************\n");
- int option = sc.nextInt();
- int[] grade = new int[20];
- int sum=0;
- int numberGrades=0;
- int average=-1;
- int sumvariance = 0;
- int variance = 0;
- for(int i=1;i<21;i++){
- grade[i-1]=Integer.parseInt(matrix[i][activity]);
- }
- for(int i=0;i<20;i++){
- if(grade[i]!=-1){
- sum += grade[i];
- numberGrades++;
- }
- }
- if(numberGrades!=0){
- average = sum/numberGrades;
- }
- for(int i=0;i<20;i++){
- if(grade[i]!=-1){
- sumvariance+=(int) Math.pow((grade[i] - average),2);
- }
- }
- if(numberGrades!=0){
- variance=sumvariance/numberGrades;
- }
- int dev=(int)Math.sqrt(variance);
- switch(option){
- case 1:
- System.out.println("The activity average is: " + average);
- break;
- case 2:
- System.out.println("The activity variance is: " + variance);
- break;
- case 3:
- System.out.println("The activity Standard Deviation is: " + dev);
- break;
- }
- }
- public static void groupPerformance(){
- int[] grade= new int [20];
- for(int i=1; i<21;i++)
- grade[i-1]=Integer.parseInt(finalGrade(i));
- System.out.println ("***************************************\n"+
- "What would you like to know?\n"+
- "1.- Group average \n"+
- "2.- Group Variance \n"+
- "3.- Group Standard Deviation \n"+
- "4.- Number of students that passed and number of stufents that failed. \n"+
- "***************************************\n");
- int option =sc.nextInt();
- int sum=0;
- int numberGrades=0;
- int groupaverage=-1;
- int sumvariance = 0;
- int variance = 0;
- for(int i=0;i<20;i++){
- if(grade[i]!= 0 ){
- sum += grade[i];
- numberGrades++;
- }
- }
- if(numberGrades!=0){
- groupaverage = sum/numberGrades;
- }
- for(int i=0;i<20;i++){
- if(grade[i]!= 0){
- sumvariance += (int) Math.pow((grade[i]-groupaverage),2);
- }
- }
- if(numberGrades!=0){
- variance = sumvariance/numberGrades;
- }
- int dev=(int)Math.sqrt(variance);
- switch(option){
- case 1:
- System.out.println("The group Average is: " + groupaverage);
- break;
- case 2:
- System.out.println("The group Variance is: "+ variance);
- break;
- case 3:
- System.out.println("The group Standard Deviation is: "+ dev);
- break;
- case 4:
- int p=0;
- int f=0;
- for(int i=0;i<20;i++){
- if(grade[i]!= 0 & grade[i]<70){
- f++;
- }
- if(grade[i]!= 0 & grade[i]>=70){
- p++;
- }
- }
- System.out.println("Number of students that passed: " + p + "\nNumber of students that failed: " + f);
- break;
- }
- }
- public static void printMatrix(){
- for (final Object[] row : matrix) {
- System.out.format("%15s%15s%15s%15s%15s%15s%15s%18s%15s%15s\n", row);
- }
- }
- public static String finalGrade (int student){
- int[] grade = new int[10];
- int suma = 0;
- double c = 0;
- double c2 = 0;
- double c3 = 0;
- double c4 = 0;
- for(int i=1;i<10;i++){
- grade[i-1]=Integer.parseInt(matrix[student][i]);
- }
- for(int i=1;i<9;i++){
- if(i<=4){
- suma += grade[i];
- c = suma/4;
- c = c*0.4;
- }
- else if (i>4&&i<=6){
- suma = 0;
- suma += grade [i];
- c2 = suma/2;
- c2 = c2*0.15;
- }
- else if (i==7){
- c3 = grade [i]*0.25;
- }
- else if (i==8){
- c4 = grade [i]*0.20;
- }
- }
- double finalg = c + c2 + c3 + c4;
- return matrix[student][9]=Double.toString(finalg);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement