Hallo!
Vielleicht kann mir ja jemand helfen, ich stehe grad auf dem Schlauch -.-
Ich arbeite gerade an einem Semesterprojekt, bei dem es um ein Studienleistungstool zur Leistungsverwaltung für Studenten geht. Das Tool hat unter anderem die Funktion die Durchschnittsnote für alle Semester zu berechnen (damit beschäftige ich mich gerade). Die Informationen werden vom Tool aus einer CSV-Datei herausgelesen, in die der Student vorher Leistungen in Form von 'Semester, Modul, Note, Dozent' einträgt.
So weit, so gut. Es findet bei mir eine Berechnung statt, jedoch wurde mir zuerst der "Durchschnittswert" für jeden einzelnen Schleifendurchlauf ausgegeben. Ich habe den Fehler erkannt und die Klammern so gesetzt, dass der Durchschnittswert erst nach Ende des Schleifendurchlaufs ausgegeben wird. Jetzt habe ich allerdings das Problem, dass die float-Variable average, mit der ich rechne, durch das Schließen (also per Klammer) des else-Blocks im nächsten Block (ab 22.) als noch nicht deklariert gilt. Wie kann ich den vorher ermittelten Wert an diese Stelle übergeben? Ich wäre sehr dankbar für jede Hilfe!
Vielleicht kann mir ja jemand helfen, ich stehe grad auf dem Schlauch -.-
Ich arbeite gerade an einem Semesterprojekt, bei dem es um ein Studienleistungstool zur Leistungsverwaltung für Studenten geht. Das Tool hat unter anderem die Funktion die Durchschnittsnote für alle Semester zu berechnen (damit beschäftige ich mich gerade). Die Informationen werden vom Tool aus einer CSV-Datei herausgelesen, in die der Student vorher Leistungen in Form von 'Semester, Modul, Note, Dozent' einträgt.
So weit, so gut. Es findet bei mir eine Berechnung statt, jedoch wurde mir zuerst der "Durchschnittswert" für jeden einzelnen Schleifendurchlauf ausgegeben. Ich habe den Fehler erkannt und die Klammern so gesetzt, dass der Durchschnittswert erst nach Ende des Schleifendurchlaufs ausgegeben wird. Jetzt habe ich allerdings das Problem, dass die float-Variable average, mit der ich rechne, durch das Schließen (also per Klammer) des else-Blocks im nächsten Block (ab 22.) als noch nicht deklariert gilt. Wie kann ich den vorher ermittelten Wert an diese Stelle übergeben? Ich wäre sehr dankbar für jede Hilfe!
Java:
public String printDurchschnittsnoteAlleSemester() {
// Lokale Variable zum Halten von Print-Ergebnissen
String print = "Die aktuelle Durchschnittsnote ist ";
// Alle Studienleistungen durchgehen
for (int i = 0; i < studienleistungen.size(); i++) {
//Bedingung für Mittelwert: es müssen mind. 2 Werte vorhanden sein
if(studienleistungen.size() < 2)
System.out.println("Es müssen mindestens 2 Noten vorhanden sein, um die Durchschnittsnote berechnen zu können!");
else {
Studienleistung studienleistung = studienleistungen.get(i);
if (studienleistung.getNote() >= 1.0 || studienleistung.getNote() <= 4.0) {
float average = 0;
average += studienleistung.getNote();
}
}
average = average/studienleistungen.size();
// Text, der in der Konsole zu der Studienleistung angezeigt
// werden soll
String text = String.valueOf(average);
// Diesen text zum Gesamttext einfügen
print = print + text;
// Ganz zum Schluss wird das Projekt um die allgemeine Informationen
// zum Studium ergänzt.
print = getStudiumInfo() + print;
} return print;
}
}