Hallo, vielleicht kann mir ja jemand weiterhelfen. Ganz am Ende die If-Bedingung wird nicht vollständig ausgeführt bzw. die else-Bedingung wird nie durchgeführt. Egal wie groß der zuvor ermittelte Schnitt ist (wenn er größer 2 ist, wird else trotzdem nicht durchgeführt). Weiß jemand voran das liegen könnte? Ich glaube es ist nur eine Kleinigkeit, die ich allerdings nicht finde, da ich noch sehr neu mit Java bin. Das Programm an sich hat keine Fehler.
Code:
package Notendurchschnitt;
import java.util.Scanner;
public class Notenschnitt{
double summe;
int anzahl;
public static double schnitt;
public static double schnitt (double [] noten) {
double summe = 0;
int anzahl = noten.length;
for (int i=0; i<noten.length; i++) {
summe = summe + noten [i];
}
double schnitt = summe / anzahl;
return schnitt;
}
public static void main (String [] args) {
Scanner lesen = new Scanner(System.in);
System.out.println("Wie viele Noten hast Du bekommen?");
int anzahl = lesen.nextInt();
double [] noten = new double [anzahl];
System.out.println("Bitte gebe nun alle Noten ein. Trenne sie durch ein Leerzeichen oder ein Space.");
for (int i = 0; i<noten.length; i++) {
noten [i] = lesen.nextDouble();
}
System.out.println("");
System.out.println("Dein Schnitt beträgt: "+schnitt(noten));
if (schnitt < 2){
System.out.println("Gut gemacht!");
}else{
System.out.println("Das geht noch besser.");
lesen.close();
}
}
}