2017-11-14 18 views
-4

問題は「findMaxGradeというメソッドを記述します。このメソッドはintの配列をパラメータとしてとり、配列から最大値を返す(つまり、最大の等級を返します)。プログラムを設定して最大グレードを見つけるにはどうすればよいですか?

私はそれの周りに頭を働かせることはできません。以前は、ユーザーに複数の成績を入力させ、その平均を見つけて、それに対応する文字を成績に付ける必要がありました。 入力を読み取る方法でプログラムを設定し、どのプログラムが最も高いかを知る方法を教えてください。それが正しいと思われる方法です。

public int findMaxGrade(int [] array, n) 
     { 
      int max = -1; 
      for(int i = 0; i < n, i++) 
       if(max<array[i]) 
        max = array[i]; 

      return max; 

     } 

をそして、あなたはでそれを呼び出すことができます:

import java.util.Scanner; 
public class ArrayExample3{ 
    public static void main(String [] args) { 
     Scanner input = new Scanner(System.in); 
     System.out.println("Please enter the total number of grades"); 
     int n = input.nextInt(); 
     double [] array = new double [n]; 
     double total = 0.0; 

     for(int i = 0; i < array.length; i++){ 
      System.out.println("Please enter the grade #"+(i+1)); 
      double g = input.nextDouble(); 
      array[i] = g; 
      total += array[i]; 
     } 
     double avg = total/array.length; 

     System.out.println("AVG: "+avg); 

     System.out.println(getGradeByAVG(avg)); 

    } 
    public static String getGradeByAVG(double avg){ 

     String letterGrade = ""; 
     if(avg >= 90 && avg <= 100) { 
      letterGrade = "A"; 
     } 
     else if(avg >= 80 && avg <= 89) { 
      letterGrade = "B"; 
     } 
     else if(avg >= 70 && avg <= 79) { 
      letterGrade = "C"; 
     } 
     else if(avg >= 60 && avg <= 69) { 
      letterGrade = "D"; 
     } 
     else if(avg < 60) { 
      letterGrade = "F"; 
     } 
     return letterGrade; 
    } 
} 
+0

。ステップ1:配列を読み込みます。ステップ2:最初の要素を別個の要素に格納するステップ3:配列を反復処理する。反復要素が分離要素よりも高い場合は、最後に分離要素を置き換えて別の要素を返します。 – Stultuske

+0

これは一連の問題の一部です。ありがとうございます(: –

答えて

0

この方法は、トリックを行う必要がありますその...たったの約5行を必要とする要件の多くのコードfindMaxGrade(array, n);

+0

ジョージ:負の値が許されないと思われるものは?-3と-5の2つの入力があるとしましょう。結果は-1になります。maxを配列[ 0]とi = 1から反復を開始します。 – Stultuske

+0

@Stultuske当然あなたは正しいかもしれませんが、この場合、グレードが負の値を持つとは思わないと思います。配列の値 –

+0

私はそれを誇りに思っているとは思っていませんが、私はかつて否定的な等級を受けました;)私はたくさん開いています:D – Stultuske

関連する問題