2012-04-13 11 views
1

Ich habe eine Reihe von Testnoten für jeden Schüler in einer Klasse. Als Beispiel für Adam test1 = 90 test2 = 92 test3 = 93, so wäre der Durchschnitt 91,67. Ich würde dies dann als Array6 speichern. Dann unter Verwendung dieses Arrays würde ich 30% davon plus 70% des endgültigen (array5) nehmen, um neues Array zu machen.Suche nach dem Durchschnitt von Zahlen in einem Array

Ich habe versucht, dies in meinem Code unten zu implementieren, aber es funktioniert nicht richtig. Könnte jemand bitte das Problem vorschlagen ...

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 
     } 
    } 
} 
+0

Sie fügen nichts hinzu. –

+3

Ich gebe dir einen Tipp: Wenn du das nicht selbst herausfinden kannst, ist dein nächster Teststand Null. –

+0

Ein weiterer Hinweis: Wenn der Prof Ihnen die Liste der Zahlen auf einem Blatt Papier gegeben hat (zusammen mit einem einfachen 4-Funktionen-Rechner), wie würden Sie den Durchschnitt berechnen? –

Antwort

2

Ein Array hat keinen get() Methode, sondern eine Arraylist tut so, wenn Sie Ihre Arrays Arraylisten ändern, dann können Sie verwenden, get() den Wert abzurufen.

Wenn ich richtig verstehe, haben Sie ein Array, das die Namen jedes Schülers enthält und die Noten jedes Schülers werden in einem separaten Array für jeden Schüler gehalten.

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); 

, dass Sie den Durchschnitt für „Adam“ geben würde, und Sie sollten das nutzen können, den Rest Ihres Problems herauszufinden.

+0

Ich muss Array und nicht ArrayLists verwenden, also wie würde ich es so machen? Es wäre einfach mit Liste, aber yeah .. –

+0

Theres ein Array, das Namen speichert dann ein Array, das Test 1 Noten speichert, ein anderes für test2. Sie speichern nicht die Noten für eine Person sonst wäre dies einfach: p –

+0

Ich denke, eine bessere Frage wäre, ist es etwas ähnlich wie die Methode get() von Arraylists für Arrays? Wenn ja, könnte ich einfach den Wert 1 vom Array nehmen, das zum Wert 1 hinzugefügt wurde, das Form-Array 2, das Gleiche für drei, dann einfach div mit 3, um den Durchschnitt zu erhalten? Dann nehmen Sie diese in ein neues Array –

1

Um nicht die genaue Antwort zu geben (da dies Hausaufgaben sind) müssen Sie das Array nehmen, addieren Sie alle Elemente und teilen Sie diese Summe durch die Anzahl der Elemente im Array. Dies könnte leicht in einem Funktionsaufruf erfolgen, der das Array akzeptiert und den Durchschnittswert zurückgibt.

+0

Wie würde ich dies tun, da ich eine Zahl aus jedem Array ziehen müssen, zum Beispiel Adam ich würde zuerst in Array1, zuerst in Array2 und so weiter –

+2

erhalten Sie können dies hinzufügen alle einzelnen Arrays in ein neues Array, um alles zu einem Multi-Dimensiona (2D) -Array zu machen. Dann können Sie alle Spalten nach Zeilen oder Zeilen nach Spalten durchlaufen. –

Verwandte Themen