제가 아주예전에 자바를 들어서 다시 공부좀 할겸 자바 프로그래밍 문제같은거를 찾아서 하던도중 <div>막혀서 아무것도 못하고있네요 제가 뭘 잘못했는지 좀 도와주세요 !</div> <div><br></div> <div>문제가뭐냐면 클래스랑 테스터 클래스를 만들어야하는데</div> <div>테스터에서 스캐너로 유저한테서 n의 값을 받고 또 그 n 숫자만큼의 시험점수들을 받아야해요</div> <div><br></div> <div>그다음 클래스는</div> <div>Instance Field: Array of scores, Best grade</div> <div>Methods:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>public void add(double score)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>public String findBestGrade()</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>public String findStudentGrade()</div> <div><br></div> <div>이 모든것들을 충족시켜야한다고 써있네요</div> <div><br></div> <div>그리고 프로그램을 실행할시 (예를들어)</div> <div>Enter the number of students: 4</div> <div>Enter 4 scores: 40,55,70,58</div> <div><br></div> <div>output:</div> <div>Student 1 is 40 and grade is C.</div> <div>Student 2 is 55 and grade is B.</div> <div>Student 3 is 70 and grade is A.</div> <div>Student 4 is 58 and grade is B. 이렇게 출력되어야하는데</div> <div><br></div> <div>제가 쓴코드가 ****************************</div> <div><br></div> <div><div>public class GradeGiver</div> <div>{</div> <div> private int studentNumber;</div> <div> private int[] vars;</div> <div> private int best=0;</div> <div> private String grade;</div> <div><br></div> <div> /**</div> <div> * Constructor for objects of class GradeGiverTester</div> <div> */</div> <div> public GradeGiver(int numofStd, int[] t)</div> <div> {</div> <div> // initialise instance variables</div> <div> studentNumber = numofStd;</div> <div> vars = t;</div> <div> }</div> <div> public String findBestGrade()</div> <div> {</div> <div> best = vars[0];</div> <div> for (int i = 0; i< studentNumber; i++)</div> <div> {</div> <div> if (vars[i] > best)</div> <div> best = vars[i];</div> <div> }</div> <div> return "Error";</div> <div> }</div> <div> </div> <div> public String findStudentGrade()</div> <div> {</div> <div> for (int i = 0; i< studentNumber; i++)</div> <div> {</div> <div> if (vars[i] >= best -10)</div> <div> grade = "A";</div> <div> else if (vars[i] >= best -20)</div> <div> grade = "B";</div> <div> else if (vars[i] >= best -30)</div> <div> grade = "C";</div> <div> else if (vars[i] >= best -40)</div> <div> grade = "D";</div> <div> else</div> <div> grade = "F";</div> <div> </div> <div> }</div> <div> return "Error";</div> <div> }</div> <div>}</div></div> <div><br></div> <div><br></div> <div>*********************************</div> <div>*********************************</div> <div><br></div> <div>그리고 테스터 클래스는</div> <div><br></div> <div><div>public class GradeGiverTester</div> <div>{</div> <div> public static void main(String[] args)</div> <div> {</div> <div> Scanner input = new Scanner(System.in);</div> <div> System.out.println("Enter the number of students: ");</div> <div> int numofStd = input.nextInt();</div> <div> </div> <div> Scanner input2 = new Scanner(System.in);</div> <div> int[] var = new int[numofStd];</div> <div> </div> <div> for(int i=0; i<numofStd; i++)</div> <div> {</div> <div> System.out.println("Test scores: ");</div> <div> var[i] = input2.nextInt();</div> <div> }</div> <div> </div> <div> GradeGiver giver = new GradeGiver(numofStd,var);</div> <div> </div> <div> System.out.println("Best score: " + giver.findBestGrade());</div> <div> for (int i=0; i<numofStd; i++)</div> <div> {</div> <div> System.out.println("Student "+ i + " is " + var[i] + " and grade is " + giver.findStudentGrade());</div> <div> }</div> <div> </div> <div> </div> <div> }</div> <div> </div> <div>}</div></div> <div><br></div> <div>이렇게 실행하게 되면 스튜던트 숫자와 시험점수는 나오는데 A/B/C/D 는 나오지가 않네요 </div> <div><br></div> <div>메인 클래스에있는 2개의 메소드가 잘못된거같은데 도저희 어떻게 고칠지를 모르겟어요 ( 베스트 스코어랑 스튜던트 그레이드)</div> <div><br></div> <div>좀 도와주시면 감사하겠습니다.</div> <div><br></div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.