#1 7. Oktober 2009 Notendurchschnitt berechnen Hey ich hab ein kleines Programm geschrieben das den Notendurchschnitt von einer bestimmten Anzahl von Schülern berechnen kann. Nun ist mein Problem, dass er mir immer Abrundet. Wenn ich beispielsweise 2 Schüler habe mit den Noten 2 und 3, bekomm ich den Notendurchschnitt 2.0, welcher eigentlich 2,5 sein müsste. hier der code: Code: import java.util.Scanner; import java.io.IOException; public class Main { public static void main(String[] args) throws IOException { int note, nochmal, anz=0, gesamt_noten=0; double durchschnitt; Scanner scanner = new Scanner(System.in); do{ do{ System.out.println("Eingabe Note: "); note = scanner.nextInt(); }while(note <=0 || note>6); do{ System.out.println("Nochmal? [1 = JA | 2 = Nein]"); nochmal = scanner.nextInt(); }while(nochmal<1 || nochmal>2); ++anz; gesamt_noten = gesamt_noten + note; }while(nochmal==1); durchschnitt = gesamt_noten/anz; System.out.println("\nEs haben "+anz+" Studenten an der Klausur " +"teilgenommen. \nNotendurchschnitt: "+durchschnitt); } } PS: Haben gerade erst mit Java angefangen in der Schule + Multi-Zitat Zitieren
#2 7. Oktober 2009 AW: Notendurchschnitt berechnen Ich schätze mal es liegt am Integer note! Da brauchste nen double oder float Wert also einen Wert mit Komma. Integer sind nur ganze Zahlen! Java Standard: Primitive Datentypen – Wikibooks, Sammlung freier Lehr-, Sach- und Fachbücher So wie ichs weiß ^^ Aber ich steh atm auch voll aufm Schlauch code schon 2 tage auf der Arbeit mit Java xD + Multi-Zitat Zitieren
#3 7. Oktober 2009 AW: Notendurchschnitt berechnen hi, wenn du ein integer durch ein integer dividierst, dann bekommst auch ein "integer" zurück. es wird quasi als integer opertation durchgeführt und du bekommst keine kommazahlen zurück. du müsstest nur die zeile: Code: int note, nochmal, anz=0, gesamt_noten=0; in Code: double note, nochmal, anz=0, gesamt_noten=0; umwandeln und dann müsste es eigentlich klappen. schöner wäre es, wenn du anz und gesamte_noten als double deklarierst und die anderen als integer lässt. nice day, harry + Multi-Zitat Zitieren
#4 7. Oktober 2009 AW: Notendurchschnitt berechnen es dürfte eig. auch schon richen, wenn du nur gesamt_noten als double machst. double / int = double =) ansonsten ist zu sagen: unterstriche in attributnamen sind nicht so gern gesehen. mach da lieber gesamtNoten und sowas wie: " gesamt_noten = gesamt_noten + note;" kann man auch schön als: "gesamt_noten += note; " schreiben. will jetzt net als klug r da stehen, aber nur so lernt mans MfG + Multi-Zitat Zitieren