1

クラスの各生徒のテスト成績の配列があります。例として、Adam test1=90 test2=92 test3=93の場合、平均は91.67になります。次に、これを として保存します。次に、その配列を使用して、その30%と最終的な () の70%を使用して、新しい配列を作成します。Array6array5courseaverage

以下のコードでこれを実装しようとしましたが、正しく動作しません。誰でも問題を提案できますか...

public class Proj5 {
    public static void main (String[] args) {        
        String[] Array1 = {new String ("Adam"),new String ("Smith"),new String ("Jones"),new String ("Becky"),new String ("Taylor")};       
        Integer[] Array2 = {new Integer(90),new Integer(89),new Integer(86),new Integer(76),new Integer(95)};        
        Integer[] Array3 = {new Integer(92),new Integer(79),new Integer(85),new Integer(90),new Integer(87)};
        Integer[] Array4 = {new Integer(93),new Integer(80),new Integer(90),new Integer(87),new Integer(92)};
        Integer[] Array5 = {new Integer(90),new Integer(77),new Integer(86),new Integer(92),new Integer(89)};

        System.out.println("Name Test1 Test2 Test3 Final Average Grade");

        for (int column = 0; column<Array1.length; column++){
            System.out.printf("%s ", Array1[column]);
            System.out.printf("%s   ", Array2[column]);
            System.out.printf("%s    ", Array3[column]);
            System.out.printf("%s    ", Array4[column]);
            System.out.printf("%s  ", Array5[column]);
            System.out.println(); //start new line of output
        }
    }
}
4

2 に答える 2

2

配列には get() メソッドはありませんが、ArrayList にはあります。配列を ArrayLists に変更すると、get() を使用して値を取得できます。

私が正しく理解している場合、各生徒の名前を保持する配列があり、各生徒の成績は各生徒の個別の配列に保持されていますか?

String[] students= {"Adam","Smith","Jones"}; 
int[] adamGrades = {90,92,93};
double gradesTotal = 0.00;
for(int i=0; i < adamGrades.length; i++){
  gradesTotal += adamGrades[i];
}
double avg = (gradesTotal/adamGrades.length);
System.out.print(avg);

これにより、「Adam」の平均が得られ、それを使用して残りの問題を把握できるはずです。

于 2012-04-13T18:03:59.480 に答える
1

正確な答えを出さないようにするには (これは宿題なので)、配列を取得し、すべての要素を合計して、その合計を配列内の要素の数で割る必要があります。これは、配列を受け取って平均を返す関数呼び出しで簡単に実行できます。

于 2012-04-13T18:04:10.617 に答える