Guest User

Untitled

a guest
Dec 9th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.13 KB | None | 0 0
  1.  
  2. package csci.grade.calculator;
  3.  
  4. import java.util.Scanner;
  5. import java.text.DecimalFormat;
  6. import java.text.*;
  7.  
  8. /**
  9. *system.out.printf("%-16s | %-7s | %-9s | %-7s | %-5s \n");
  10. * component weight possible actual score
  11. * system.out.println(=========---------------");
  12. *
  13. * system.out.printf("%-16s | %6d%% | %9d | %7d | %5.2f\n", "exercises", exerweight, exerpos, exeract, exerscore);
  14. *
  15. *
  16. *
  17. *
  18. * @author c0re
  19. */
  20. //public class Calculations {
  21. //public static void weight(Scanner input){
  22.  
  23. //here calculate X/Y and return Z
  24.  
  25.  
  26.  
  27. public class CsciGradeCalculator {
  28.  
  29. /**
  30. * @param args the command line arguments
  31. */
  32. public static void main(String[] args) {
  33.  
  34. Scanner keyboard = new Scanner(System.in);//import scanner
  35.  
  36. //prompts
  37. System.out.print("CS181 Grade Calculator\n\n");
  38.  
  39. System.out.print("Please enter possible & actual points for exercises: ");
  40. double exercisesPossible = keyboard.nextDouble();
  41. double exercisesActual = keyboard.nextDouble();
  42. System.out.print("Please enter possible & actual points for feedback: ");
  43. double feedbackPossible = keyboard.nextDouble();
  44. double feedbackActual = keyboard.nextDouble();
  45. System.out.print("Please enter possible & actual points for labs: ");
  46. double labsPossible = keyboard.nextDouble();
  47. double labsActual = keyboard.nextDouble();
  48. System.out.print("Please enter possible & actual points for programs: ");
  49. double programsPossible = keyboard.nextDouble();
  50. double programsActual = keyboard.nextDouble();
  51. System.out.print("Please enter possible & actual points for exams: ");
  52. double examsPossible = keyboard.nextDouble();
  53. double examsActual = keyboard.nextDouble();
  54. System.out.print("Please enter possible & actual points for final: ");
  55. double finalPossible = keyboard.nextDouble();
  56. double finalActual = keyboard.nextDouble();
  57. keyboard.close();
  58.  
  59. // weights: Homework (5%), FeedBack Surveys(5%),
  60. // Class Labs(10%), Programs(20%), Exams(30%), and Final(30%).
  61. double exercisesWeight = 5;
  62. double feedbackWeight = 5;
  63. double labsWeight = 10;
  64. double programsWeight = 20;
  65. double examsWeight = 30;
  66. double finalWeight = 30;
  67.  
  68. //calculate
  69. double exercisesResults = ((exercisesActual / exercisesPossible) * 100) * (exercisesWeight/100);
  70. double feedbackResults = ((feedbackActual / feedbackPossible) * 100) * (feedbackWeight/100);
  71. double labsResults = ((labsActual / labsPossible) * 100) * (labsWeight/100);
  72. double programsResults = ((programsActual / programsPossible) * 100)* (programsWeight/100);
  73. double examsResults = ((examsActual / examsPossible) * 100)* (examsWeight/100);
  74. double finalResults = ((finalActual / finalPossible) * 100)* (finalWeight/100);
  75. double courseAverage = (exercisesResults + feedbackResults + labsResults + programsResults + examsResults + finalResults);
  76.  
  77.  
  78. // penalty calculationzz
  79. double programPenalty;
  80. double finalPenalty;
  81. double progPenaltyThreshold = .145;
  82.  
  83. // if (programResults <= progPenaltyThreshold){
  84. // double pen1Final =
  85. // }
  86.  
  87. //calculate grade letter
  88. String letter = "A";
  89.  
  90. if(courseAverage>=92.5){
  91. letter="A";
  92. }
  93.  
  94. else if(courseAverage>=89.5){
  95. letter="A-";
  96. }
  97.  
  98. else if(courseAverage>=86.5){
  99. letter="B+";
  100. }
  101.  
  102. else if(courseAverage>=82.5){
  103. letter="B";
  104. }
  105.  
  106. else if(courseAverage>=79.5){
  107. letter="B-";
  108. }
  109.  
  110. else if(courseAverage>=76.5){
  111. letter="C+";
  112. }
  113.  
  114. else if(courseAverage>=72.5){
  115. letter="C";
  116. }
  117.  
  118. else if(courseAverage>=69.5){
  119. letter="C-";
  120. }
  121.  
  122. else if(courseAverage>=66.5){
  123. letter="D+";
  124. }
  125.  
  126. else if(courseAverage>=59.5){
  127. letter="D";
  128. }
  129. else{
  130. letter="F";
  131. }
  132.  
  133. //format
  134. DecimalFormat whole = new DecimalFormat("#");
  135. DecimalFormat twoPlaces = new DecimalFormat("#.##");
  136.  
  137. //results
  138. System.out.println("\nComponent | Weight | Possible | Actual | Score");
  139. System.out.printf("===========================================================\n");
  140. System.out.printf("Exercises | %s%% | %s | %s | %s \n", whole.format(exercisesWeight), whole.format(exercisesPossible), whole.format(exercisesActual), twoPlaces.format(exercisesResults));
  141. System.out.printf("Feedback | %s%% | %s | %s | %s \n", whole.format(feedbackWeight), whole.format(feedbackPossible), whole.format(feedbackActual), twoPlaces.format(feedbackResults));
  142. System.out.printf("Labs | %s%% | %s | %s | %s \n", whole.format(labsWeight), whole.format(labsPossible), whole.format(labsActual), twoPlaces.format(labsResults));
  143. System.out.printf("Programs | %s%% | %s | %s | %s \n", whole.format(programsWeight), whole.format(programsPossible), whole.format(programsActual), twoPlaces.format(programsResults));
  144. System.out.printf("Exams | %s%% | %s | %s | %s \n", whole.format(examsWeight), whole.format(examsPossible), whole.format(examsActual), twoPlaces.format(examsResults));
  145. System.out.printf("Final | %s%% | %s | %s | %s \n", whole.format(finalWeight), whole.format(finalPossible), whole.format(finalActual), twoPlaces.format(finalResults));
  146. System.out.printf("Program Penalty |----------------------------| 0 \n");
  147. System.out.printf("Final Penalty |----------------------------| 0 \n");
  148. System.out.printf("============================================================\n");
  149. System.out.printf("Course Average |----------------------------| %.2f %s\n", courseAverage, letter);
  150.  
  151.  
  152.  
  153. //Weight(keyboard); uses method defined above
  154.  
  155. // possible actual
  156. // XXX XXX
  157. // 0123456
  158. //
  159. // double exercisesP = exercisesInput.substring(0,3);
  160. // double exercisesA = exercisesInput.substring(4);
  161.  
  162. //double exercisesP = exercisesInput.substring(0,2);
  163.  
  164. //double exercisesA = exercisesInput.substring(4);
  165. //System.out.printf("%s %s", exercisesP, exercisesA);
  166. // double execersisesPossible = exercisesInput.substring(0,position);
  167. // position = exercisesInput.indexOf(' ');
  168. // String execersisesPossible = exercisesInput.substring(0,position);
  169. // position = exercisesInput.indexOf(' ');
  170.  
  171.  
  172. }//main
  173. }//class
Add Comment
Please, Sign In to add comment