fragen zur for-schleife und arrays

Blueserr

Mitglied
hi leute,

das hier ist der quelltext:

Java:
  import java.util.*;
public class Notenfeld
{
public static void main(String argv[])
{
int anzahlNoten;
float summe=0;
float notenFeld[];
Scanner eingabe = new Scanner(System.in);

System.out.print("Wie viele Noten?");

anzahlNoten = eingabe.nextInt();
notenFeld = new float[anzahlNoten];

for (int i = 0; i < anzahlNoten ; i++)
{
System.out.print((i+1)+".Note: ");
notenFeld[i] = eingabe.nextFloat();
summe =summe + notenFeld[i];
}

System.out.println("Durchschnitt:"+(summe/anzahlNoten));
System.out.println("Kontrollaufgabe: ");
for(int i = 0; i < notenFeld.length ; i++)
System.out.println(notenFeld[i]+" ");
System.out.println("Programmende Notenfeld.");
}
}


nun habe ich ein paar fragen:

--> notenFeld = new float[anzahlNoten];
mit diesem befehl, verbinde ich quasi die anzahl mit dem zähler, oder?

-->notenFeld = eingabe.nextFloat();
i = zähler soweit ich das sehen kann, oder?

--> summe = summe + notenfeld;
dieser befehl ist mir nicht logisch. wäre cool, wenns mir jmd. erklären könnte.
immerhin weiß ich doch gar nicht aus was sich die summe bilden soll, da summe nicht definiert wird.
ändere ich den befehl in: summe = notenfeld; (das wäre für mich übriegsn logischer), kommt als durchschnitt nur 1.0 raus!.

btw: die rechnung würde ja heißen: summe = 0 + zähler.
wieso?

Danke schonmal im voraus! :):)
 
Zuletzt bearbeitet von einem Moderator:
M

Marcinek

Gast
--> notenFeld = new float[anzahlNoten];
mit diesem befehl, verbinde ich quasi die anzahl mit dem zähler, oder?

Nein. Du erstellt ein Array von der größe "anzahlNoten".

-->notenFeld = eingabe.nextFloat();
i = zähler soweit ich das sehen kann, oder?


Das ist der Index des Arrays.

--> summe = summe + notenfeld;
dieser befehl ist mir nicht logisch. wäre cool, wenns mir jmd. erklären könnte.
immerhin weiß ich doch gar nicht aus was sich die summe bilden soll, da summe nicht definiert wird.
ändere ich den befehl in: summe = notenfeld; (das wäre für mich übriegsn logischer), kommt als durchschnitt nur 1.0 raus!.


Du hast weiter oben Summer = 0 definiert. Wieso ist dann summe undefiniert?

Summe = Summe + x bedeutet.. Addiere zu dem Wert aus Summe den Wert X hinzu und speicher das wieder in Summe.

Du willst ja auf Summe addieren.
 

Blueserr

Mitglied
[Zitat]Das ist der Index des Arrays.


hi und danke für die vielen hilfreichen antworten!

also d.h. ich könnte den index des arrays in der forschleife auch einfach [anzahlNoten] nennen?


und nun nochmal zur summe:

ja, summe ist mit 0 definiert. aber was ergibt das für einen sinn, wenn man 0 + x addiert?

wäre es da nicht einfacher einfach summe = notenFeld zu schreiben? weil der wert von der variable "summe" ja sowieso auf 0 gesetzt wurde!
 
M

Marcinek

Gast
also d.h. ich könnte den index des arrays in der forschleife auch einfach [anzahlNoten] nennen?

Wenn es an der Stelle Sinn macht klar, wieso nicht.

Ich würde empfehlen ein Buch zu lesen dazu.

wäre es da nicht einfacher einfach summe = notenFeld zu schreiben? weil der wert von der variable "summe" ja sowieso auf 0 gesetzt wurde!


Versuch das mal in Gedanken durchzugehen.

Zuerst steht da

summe = 0;

also Summe = 0 + x; wobei x = 7

Dann steht da in der nächsten Iteration

Summe = 7 + x; wobei x nun 8 ist....
 

Blueserr

Mitglied
hi,

und nochmal danke!

den gedankengang kann ich nciht ganz nachvollziehen.
wieso ist x im nächsten durchgang = 8?


so sieht der stand der dinge für mich aus:

ich will das der durchschnitt von 7 noten errechnet wird. also: anzahlNoten = 7 .

nun möchte ich meine 7 noten eingeben. also: notenFeld,

nun möchte ich den durchschnitt errechnen also muss ich ja die summe des notenfeldes / anzahlNoten rechnen.

und da wird mir einiges unschlüssig bei der erwähnten formel.
 
H

hüteüberhüte

Gast
Hätte es vielleicht so geschrieben:
Java:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;

public class Notenfeld {

    public static void main(String[] args) throws IOException {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

        System.out.println("Wie viele Noten?");
        int[] noten = new int[Integer.parseInt(reader.readLine())];

        for (int i = 0; i < noten.length; i++) {
            System.out.println(i + 1 + ". Note (ohne Dezimaltrennzeichen):");
            noten[i] = Integer.parseInt(reader.readLine());
        }

        int summe = 0;
        for (int n : noten) {
            summe += n;
        }
        final double arithmetischesMittel =
                summe / 10.0 / noten.length;

        System.out.println("Durchschnitt: " + arithmetischesMittel);
        System.out.println("Kontrolle: " + Arrays.toString(noten));
    }
}
Das würde es so lange wie möglich vermeiden, mit double zu rechnen, was immer eine ungenaue Angelegenheit ist: http://javathreads.de/2009/03/niemals-mit-den-datentypen-float-oder-double-geldbetraege-berechnen/

Java:
System.out.println("Durchschnitt:"+(summe/anzahlNoten));
summe u. anzahlNoten sind Variablen des Typs int, d.h., es wird abgerundet, das wiederum ist aber für Nachkommastellen schlecht
 

Blueserr

Mitglied
naja.

anzahlnoten = int (ganze zahlen), das ist richtig.

aber we rhta auch schon den durchschnitt von 6,5 fächern zu berechnen?

der rest ist float
 
H

hüteüberhüte

Gast
Hä? Wirst doch übereinstimmen, dass das arithmetische Mittel nicht immer eine ganze Zahl ist? Insofern ist mein KSKB richtig und liefert ungefähr genaue Ergebnisse.

Oder weißt du nicht, dass int / int immer abrundet/ein ganzzahliges Ergebnis zurück gibt?
 
Zuletzt bearbeitet von einem Moderator:
Ähnliche Java Themen
  Titel Forum Antworten Datum
V Erste Schritte Habe Fragen zu der For und While Schleife als auch Inkrement und Dekrement Java Basics - Anfänger-Themen 4
S Erste Schritte Fragen zur For-Schleife Java Basics - Anfänger-Themen 9
Zrebna Fragen zu einem Klassendiagramm Java Basics - Anfänger-Themen 8
H Fragen zu Wrapperklassen Java Basics - Anfänger-Themen 29
S Best Practice Fragen zu Projektstruktur einer Datenbank-Abfrage-App (MVC) Java Basics - Anfänger-Themen 13
A Bei VierGewinnt fragen ob man gegen CPU oder Menschen spielen will. Java Basics - Anfänger-Themen 7
A Bei VierGewinnt vorher fragen, ob man gegen den Computer spielen möchte oder gegeneinander. Java Basics - Anfänger-Themen 1
A Bei VierGewinnt fragen, ob man gegen den Computer spielen möchte oder gegeneinander Java Basics - Anfänger-Themen 1
sserio Wie kann man nach einer Klasse fragen? Java Basics - Anfänger-Themen 12
G Fragen zu Kompelierfehler in Aufgabe. Java Basics - Anfänger-Themen 25
E Bäume/ allgemeine Fragen Java Basics - Anfänger-Themen 21
O Falsche Antworten zu Fragen Java Basics - Anfänger-Themen 4
S Diverse Fragen vor Schulaufgabe ;) Java Basics - Anfänger-Themen 4
S Fragen zu Ausgabe double und float Java Basics - Anfänger-Themen 3
B fragen zu Aufbau eines UML-Klassendiagramm Java Basics - Anfänger-Themen 1
C 3 Fragen rund um Klassenattribute Java Basics - Anfänger-Themen 8
L Erste Schritte Log4J Fragen Java Basics - Anfänger-Themen 5
NeoLexx Fragen zu diversen Elementen der Javabibliothek Java Basics - Anfänger-Themen 5
D Budget Manager fragen zur Umsetzung Java Basics - Anfänger-Themen 9
N Fragen zur Datenspeicherung Java Basics - Anfänger-Themen 45
T Java Anfänger mit konkreten Fragen Java Basics - Anfänger-Themen 2
CT9288 Fragen zu Java Java Basics - Anfänger-Themen 16
W Fragen zu Generics Java Basics - Anfänger-Themen 14
T ObjectInput/OutputStream Fragen zur Funktionsweise Java Basics - Anfänger-Themen 3
J Fragen zu einer Methode Java Basics - Anfänger-Themen 3
J Fragen zum Code aus dem Buch "Schrödinger programmiert Java 2.te Ausgabe" Java Basics - Anfänger-Themen 6
Z Fragen zu Exception (Throws/throw) Java Basics - Anfänger-Themen 7
J Fragen zu Input/Output Java Basics - Anfänger-Themen 3
J Erste Schritte Oracle Tutorials zu Java 8 - Fragen dazu Java Basics - Anfänger-Themen 1
H Java Quereinsteiger Roadmap und Fragen Java Basics - Anfänger-Themen 29
H fragen Java Basics - Anfänger-Themen 15
M Samelsarium Grundlegender Fragen 2 Java Basics - Anfänger-Themen 9
M Sammelsarium an Grundlagen Grundlagen Fragen Java Basics - Anfänger-Themen 11
B Java ist / wird kostenpflichtig. Ein paar Fragen Java Basics - Anfänger-Themen 1
J Fragen zu synrchonized und kritischen Abschnitten Java Basics - Anfänger-Themen 5
S Fragen zu einem Rechentrainer Java Basics - Anfänger-Themen 2
B Java Vererbung Fragen (zu Code Beispiel) Java Basics - Anfänger-Themen 3
J Wo kann man Fragen zu ireport stellen. Java Basics - Anfänger-Themen 0
M Fragen zum Anlegen und Benutzen von Listen Java Basics - Anfänger-Themen 9
G Ein paar Anfänger Fragen zu StdDraw Java Basics - Anfänger-Themen 4
D Fragen zur Klassen Java Basics - Anfänger-Themen 4
Aprendiendo Zwei Fragen und ein geerbtes "protected"-Attribut Java Basics - Anfänger-Themen 2
J Interface Fragen bezüglich "Sauberkeit" von Code Java Basics - Anfänger-Themen 5
D Objekte-Fragen Java Basics - Anfänger-Themen 1
D Anfänger-Fragen(Parameter einer Methode) Java Basics - Anfänger-Themen 7
K Zwei Fragen zu Graphics/Graphics2D Java Basics - Anfänger-Themen 5
R Fragen über den Konstruktor Java Basics - Anfänger-Themen 0
Azazel Ein paar Fragen zu Methodenaufrufen(java.awt) Java Basics - Anfänger-Themen 2
C Interface Fragen zum Interface Java Basics - Anfänger-Themen 7
GreenTeaYT Exception und zur OOP fragen? Java Basics - Anfänger-Themen 3
C Fragen zum Spigot Plugin (1.8) Java Basics - Anfänger-Themen 6
J Fragen zu Exceptions Java Basics - Anfänger-Themen 24
N Quiz- Fragen zufällig anzeigen lassen Java Basics - Anfänger-Themen 7
J Verschieden Fragen über Java Programmierung Java Basics - Anfänger-Themen 3
L Viele Fragen zu den Grundlagen Java Basics - Anfänger-Themen 5
B Fragen zu ZIP-File Java Basics - Anfänger-Themen 9
L fragen zu arrays Java Basics - Anfänger-Themen 8
L Fragen zu selbstgeschriebenem Programm Java Basics - Anfänger-Themen 5
M Fragen zum Auslesen von HTML Seiten Java Basics - Anfänger-Themen 5
J Threading-Aufgabe. Totale Noob Fragen, aber bitte trotzdem beantworten ;) Java Basics - Anfänger-Themen 7
S Java Fragen Konstruktor & Statische Methoden Java Basics - Anfänger-Themen 4
K Erste Schritte Frage Antwort Spiel - Fragen zur Planung Java Basics - Anfänger-Themen 2
C Java Applet Fragen: Serialisierung, Excel import Java Basics - Anfänger-Themen 2
Anfänger2011 2 kleine Fragen zu ArrayListen Java Basics - Anfänger-Themen 5
S Fragen zu Ausdrücken&Bedingungen Java Basics - Anfänger-Themen 5
A 2 kurze Anfänger fragen Java Basics - Anfänger-Themen 6
H grundlegende Fragen Java Basics - Anfänger-Themen 3
V Interface ich schäme mich das zu fragen, aber ich schaff nicht ein Text zu zentrieren :( [javaFX] Java Basics - Anfänger-Themen 6
N Programm: Fragen beantworten Java Basics - Anfänger-Themen 6
C Anfänger Anfänger Fragen Java Basics - Anfänger-Themen 8
Z Compiler-Fehler LinkedList Fragen Java Basics - Anfänger-Themen 4
D Rekursion Allgemeine Fragen Java Basics - Anfänger-Themen 2
D [Fragen] zu Methoden Java Basics - Anfänger-Themen 2
S Fragen zur Implementierung eines Binärbaums Java Basics - Anfänger-Themen 3
T Ein paar Fragen zu OOP und Java. Java Basics - Anfänger-Themen 16
J Allgemeine Fragen zur GUI Java Basics - Anfänger-Themen 1
johnnydoe Erste Schritte Erster Blick - erste Fragen Java Basics - Anfänger-Themen 11
DStrohma Grundsätzliche Fragen zu Drag & Drop Java Basics - Anfänger-Themen 1
N Klassen fragen zur getter und setter methode Java Basics - Anfänger-Themen 11
S 3 Fragen, Verzeichnis, GridLayout psoitionieren, Werte für JSpinner Java Basics - Anfänger-Themen 2
T Fragen zu Set / Relationen verknüpfen Java Basics - Anfänger-Themen 4
S 2 Fragen Java Basics - Anfänger-Themen 4
S Hallo und Fragen zu Arbeitsverzeichnis und Menü Java Basics - Anfänger-Themen 8
N Java Fragen... Java Basics - Anfänger-Themen 10
F ExecutorService Fragen! Java Basics - Anfänger-Themen 2
O HashMap Fragen Java Basics - Anfänger-Themen 8
C Fragen zu Arrays Java Basics - Anfänger-Themen 19
T viele "kleine" Fragen... Java Basics - Anfänger-Themen 3
S Fragen zur Implementierung eines Adressbuches Java Basics - Anfänger-Themen 20
S Fragen zu Arrays Java Basics - Anfänger-Themen 6
K Diverse Fragen zum Fehlerlogging Java Basics - Anfänger-Themen 9
N StringReader - Fragen Java Basics - Anfänger-Themen 8
C Einige Fragen zu Frames Java Basics - Anfänger-Themen 7
M Erste Schritte Allgemeine Fragen Java Basics - Anfänger-Themen 4
PaulG Fragen zu Binärbaum Java Basics - Anfänger-Themen 21
P Methoden Aquarium (Fragen zum Scanner) Java Basics - Anfänger-Themen 5
T Erste Schritte Fragen zu meinen kleinen Programm Java Basics - Anfänger-Themen 9
D 2 Fragen: Position ändern vs. LayoutManager / Bilder einfügen im Vordergrund Java Basics - Anfänger-Themen 3
O Zwei Fragen zu Methoden Aufrufen Java Basics - Anfänger-Themen 5
J 2 Fragen zu Befehlen Java Basics - Anfänger-Themen 9

Ähnliche Java Themen

Neue Themen


Oben