Mit Switch/Case Zahlen zu Array hinzufügen

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo,
wir sollen eine Java-Application programieren, die mithilfe von Arrays Notenpunkte und Namen erfasst um dann einen Durchschnitt auszurechnen und den Notenspiegel auszugeben. Letzteres soll mit switch/case gehen.
So soeht meine Methode aus:
Code:
  public void notenspiegel() {
  switch(noten[]) {
    case 0: spiegel[0] =???;
    break;
    case 1: spiegel[1] =???;
   break;
   }





  }
Im Array noten[] wurden vorher Notenpunkte eingegeben. Nun soll das eben nach Punkten von 0 bis 15 geordnet werden (Im Beispiel erstmal nur mit 1 und 2). Wie kann ich also jeweils 1 zu den Elementen (hier 0 und 1) hinzufügen?

Danke schonmal und Grüße
 

mic_checker

Top Contributor
Ähm...wofür gibt es z.B. Inkrement Operator ++ ? oder einfache Addition + 1.

Btw. guck dir dein switch Statement nochmal an.
 
G

Guest

Gast
++ bzw. +1 hab ich mir auch schon gedacht, war mir aber nicht sicher obs geht. Was ist den an switch falsch?
 

mic_checker

Top Contributor
In der Klammer steht ein Array, du willst aber sicher die einzelnen Elemente des Arrays.Also z.B. noch ne Schleife drumrum und die einzelnen Elemente überprüfen. Fände in dem Fall ne einfache if-Abfrage aber auch schöner....is aber geschmackssache ;)
 
G

Guest

Gast
mic_checker hat gesagt.:
In der Klammer steht ein Array, du willst aber sicher die einzelnen Elemente des Arrays.Also z.B. noch ne Schleife drumrum und die einzelnen Elemente überprüfen. Fände in dem Fall ne einfache if-Abfrage aber auch schöner....is aber geschmackssache ;)
Sorry, versteh ich nicht. Könntest du mir evtl. ein Beispiel mit einer Schleife um die switch-Anweisung geben? Ist mein erstes Programm mit Arrays.
 

mic_checker

Top Contributor
Code:
for(int i = 0;i < noten.length;i++) {
switch(/*Elemente an den jeweiligen Stellen*/)  {
//case etc.
}
}

aber wie gesagt, fänd in dem fall if einfacher.
 
G

Guest

Gast
raffnix hat gesagt.:
In einem Array sind ja mehrere Elemente drin. Du kannst auf die einzelnen Elemente über den Index zugreifen.
Versuch mal Dir die Elemente einzeln anzeigen zu lassen.
Ja, das ist ja eigentlich kein Problem:
Code:
System.out.println("Schueler: " +namen[7]+ "  Note: " +noten[7] );

btw. Bist du auch im TweakPC Forum, raffnix?
 

raffnix

Bekanntes Mitglied
Äh im TweakPC Forum???
wohl mal vorbeigeschaut aber aktiv bin ich nicht.

Wenn du die Ausgabe noch in einer if schleife regeln kannst. hast du die Miete für deine Aufgabe auch schon fast im Sack.
 
G

Guest

Gast
Also, mit dem Code funzt es jetzt:
Code:
  import java.util.*;

  public class notendurch {
  public int[] noten = new int[16];
  public String[] namen = new String[4];
  public double durchschnitt;
  public int[] spiegel =new int[16];







  public void eingabe() {
   for (int x=0; x<namen.length;x++){
   System.out.println("Geben sie eine Note ein:" );
   noten[x]=StdIn.intInput();
   System.out.println("Geben sie den Namen ein:" );
   namen[x]=StdIn.stringInput();
   StdIn.cls();
   }


  }

  public void notenspiegel() {

    for (int i = 0; i <noten.length; i++){

       spiegel[i] = 0;

         for (i = 0; i <spiegel.length; i++)
         {
            spiegel[noten[i]]++;
         }

    }

  }










  public void durchschnitt() {

   for ( int d = 0; d < noten.length; d++)
   {
   durchschnitt = durchschnitt + noten[d]; }
   durchschnitt = durchschnitt / namen.length;

  }

    public void ausgabe() {
    for ( int out = 0; out < namen.length; out++){
    System.out.println("Schueler: " +namen[out]+ "  Note: " +noten[out] );
    }
    System.out.println("Der Durchschnitt betraegt: "+durchschnitt );
    for ( int r = 0; r < spiegel.length; r++){
    System.out.println("Note: " +r+ " Anzahl: "+spiegel[r] );

  }}



  public static void main (String[]args) {
         notendurch no = new notendurch();
         no.eingabe();
         no.notenspiegel();
         no.durchschnitt();
         no.ausgabe();

  }

}
Aber warum werden mir für die 0 Punkte immer die Anzahl 13 ausgegeben?
 

molotov

Mitglied
Zuerst einmal hat Dein Array noten eine Länge von 16, es werden aber nur 4 Eingaben gemacht (die Länge des Arrays namen). Bei den restlichen 12 Elementen wird die Vorbelegug nicht geändert, sie bleiben also bei 0.

Ansonsten ist die Funktion notenspiegel() einfach falsch. Die sollte wohl mehr so aussehen:

Code:
public void notenspiegel() {
    for (int i = 0; i <spiegel.length; i++) {
        spiegel[i] = 0;
    }

    for (int i = 0; i <noten.length; i++) {
        spiegel[noten[i]]++;
    }
}

So kann evtl. auch das Array spiegel etwas kleiner gemacht werden, denn 16 verschiedene Notenwerte gibt es vermutlich nicht, oder?
 

redfalcon

Mitglied
Das Array namen[] hat nur vier Eingaben, da ich keine Lust hab immer mehrere Eingaben für Namen und Noten zu machen (beim Testen), deswegen vorerst nur vier. notendurchschnitt() hab ich korrigiert, ändert aber nix daran, dass beim 0 Punkten Anzahl 12 angezeigt wird.


Doch es gibt 16 Notenpunkte (an der Oberstufe): 0,1,2,3...13,14,15
 

molotov

Mitglied
Stimmt, 0 bis 15 sind ja 16 verschiedene werte... :shock: - ist lang her.

Das mit den 0 Punkten liegt wie gesagt daran, dass das Array noten größer ist als das Array namen und daher die 0er, die von Anfang an drin stehen auch drin bleiben. Wenn Du nur mit 4 Werten testen willst gib auch dem Array noten die Größe 4.
 

redfalcon

Mitglied
molotov hat gesagt.:
Wenn Du nur mit 4 Werten testen willst gib auch dem Array noten die Größe 4.
Nein, noten[] ist ja für notenspiegel() mit 16 Werten notwendig, da ja dort die Häufigkeit der Punkte eingetragen werden. Wenn noten[] nur die Größe 4 hätte, könnte ich ja maximal bis 5 Punkte gehen.
 

molotov

Mitglied
redfalcon hat gesagt.:
Nein, noten[] ist ja für notenspiegel() mit 16 Werten notwendig, da ja dort die Häufigkeit der Punkte eingetragen werden. Wenn noten[] nur die Größe 4 hätte, könnte ich ja maximal bis 5 Punkte gehen.

Das sieht aber in Deinem Programm anders aus. Da wird in noten[0] die Note geschrieben die zu namen[0] gehört usw.
Für den Notenspiegel hast Du ja spiegel
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
K Mehrere Werte in einem Switch Case parallel überprüfen Java Basics - Anfänger-Themen 23
D Switch Case Methode aufrufen Java Basics - Anfänger-Themen 3
nelsonmandela Problem bei Ausgabe einer Switch - Case Funktion Java Basics - Anfänger-Themen 5
L Switch-Case Multiplikation wird nicht ausgegeben Java Basics - Anfänger-Themen 1
P9cman Vokal Zähler mit switch case und for-Schleife Java Basics - Anfänger-Themen 4
C Potenzberechnung über switch case. Taschenrechner mit Eingabe über einen grafischen Dialog Java Basics - Anfänger-Themen 22
1 Switch Case Java Basics - Anfänger-Themen 3
T Alternative für switch case Java Basics - Anfänger-Themen 1
W Taschenrechner mit Switch case Java Basics - Anfänger-Themen 4
B Notensystem Switch-Case Java Basics - Anfänger-Themen 31
S Switch-Case zur Berechnung der Einkommensteuer Java Basics - Anfänger-Themen 15
F Switch case wird als char nicht erkannt.... Java Basics - Anfänger-Themen 6
H Frage zur if-Bedingung bzw switch case Java Basics - Anfänger-Themen 6
S switch case fängt beim letzten case an Java Basics - Anfänger-Themen 6
F Switch Case Problem mit Regex lösen? Java Basics - Anfänger-Themen 6
W Wieso funktioniert mein Switch Case nicht ?! Java Basics - Anfänger-Themen 9
F Switch Case Modulo berechnen Java Basics - Anfänger-Themen 12
S Switch-Case für eine Array-Zuordnung Java Basics - Anfänger-Themen 5
S switch und case Java Basics - Anfänger-Themen 1
D Klassen Problem bei switch-case? Java Basics - Anfänger-Themen 2
B Wiederholen einer if/switch-case Schleife Java Basics - Anfänger-Themen 9
X Nach switch case weiter mit Auswahl Java Basics - Anfänger-Themen 7
T switch case und continue Java Basics - Anfänger-Themen 5
D switch case Code Java Basics - Anfänger-Themen 3
F Erste Schritte Switch case vs. Verschachtelte If Anweisung Java Basics - Anfänger-Themen 11
K Variablen RETURN in Case-Switch / This method must return a result of type Item Java Basics - Anfänger-Themen 4
R Switch: Nach durchlaufen des Case wieder zum Menü Java Basics - Anfänger-Themen 3
A Switch Case Java Basics - Anfänger-Themen 5
T Erste Schritte switch case Anweisung und if else Verzweigungen? Java Basics - Anfänger-Themen 6
A ArrayList-iteration mit Prüfung auf instanceof durch switch case? Java Basics - Anfänger-Themen 13
P Switch Case - Fließkommazahl Java Basics - Anfänger-Themen 2
lulas[]args Switch Schleife - orphaned case Java Basics - Anfänger-Themen 27
T kleines problem mit switch case Java Basics - Anfänger-Themen 11
R Switch/Case frage: Java Basics - Anfänger-Themen 12
K Input/Output switch case - Parameterübergabe args[0] Java Basics - Anfänger-Themen 34
P Compilerfehler bei switch-case Java Basics - Anfänger-Themen 18
D Switch und Case Java Basics - Anfänger-Themen 3
F Ps to kW Konvertierer switch-case Problem Java Basics - Anfänger-Themen 4
Q switch case hier möglich Java Basics - Anfänger-Themen 10
A Switch-Case Problem Java Basics - Anfänger-Themen 17
A Do While mit Switch Case Java Basics - Anfänger-Themen 2
berti99 Switch-Case || Problem... Java Basics - Anfänger-Themen 6
R Switch-Case Selektion Java Basics - Anfänger-Themen 13
O Switch-Case - Case 4 erhöhen Java Basics - Anfänger-Themen 9
M Frage zu Mehrfachauswahl mit switch ... case Java Basics - Anfänger-Themen 3
R Umlaute mit Switch-Case tauschen Java Basics - Anfänger-Themen 26
J switch-case Java Basics - Anfänger-Themen 19
G Switch-Case harmoniert nicht mit Random-Zahl Java Basics - Anfänger-Themen 3
I If abfrage in switch case einbauen Java Basics - Anfänger-Themen 5
R Erlaubte Selektoren bei Switch-Case Java Basics - Anfänger-Themen 2
Silas89 String in switch - case Java Basics - Anfänger-Themen 19
G Switch Case Java Basics - Anfänger-Themen 8
G zu blöd für switch case? Java Basics - Anfänger-Themen 6
G switch-case mit Strings Java Basics - Anfänger-Themen 7
T Switch Case Java Basics - Anfänger-Themen 6
A Aus switch case an den Anfang? Java Basics - Anfänger-Themen 7
P switch-case Konstrukt auch mit case i < 6: s = 6 ? Java Basics - Anfänger-Themen 10
G switch-case mit Fehler auf return-Wert-Typ Java Basics - Anfänger-Themen 2
S Zählen mit switch case Java Basics - Anfänger-Themen 8
J Aufgabe mit Arrays, Schleifen & Switch/Case Java Basics - Anfänger-Themen 7
M switch-case und array Java Basics - Anfänger-Themen 3
C switch-case mit bedingungen? Java Basics - Anfänger-Themen 5
C Switch / Case Problem, break funktioniert nicht! Java Basics - Anfänger-Themen 3
J Switch Anweisung: Case "Wert1" bis "Wert2&quo Java Basics - Anfänger-Themen 2
D switch case must be constant expression Java Basics - Anfänger-Themen 7
A Switch Case Java Basics - Anfänger-Themen 4
M HILFE bei switch & case Java Basics - Anfänger-Themen 15
A switch case mit einem String Java Basics - Anfänger-Themen 4
M switch case Java Basics - Anfänger-Themen 5
_so_far_away_ Inventarisierungssystem brauche switch Cases und weiß nicht, wie ich e implementieren muss Java Basics - Anfänger-Themen 5
M error: '.class' expected switch(char) Java Basics - Anfänger-Themen 32
A switch statement Java Basics - Anfänger-Themen 4
volcanos enum und switch (neu): falschen Wert mit IllegalArgumentException oder mit EnumConstantNotPresentException abfangen ? Java Basics - Anfänger-Themen 51
X Enum Abfrage ohne if, for, while oder switch Java Basics - Anfänger-Themen 21
Lion.King switch-Befehl Java Basics - Anfänger-Themen 6
U Warum kann ich die Methode in der ENUM Klasse nicht aufrufen? Und warum geht die Switch nicht? Java Basics - Anfänger-Themen 8
U Warum gibt das eine Nullpointerexception? (Switch) Java Basics - Anfänger-Themen 6
C if-Konstrukt durch switch-Konstrukt ersetzen Java Basics - Anfänger-Themen 14
C Taschenrechner (switch) in Taschenrechner mit Methoden umwandeln Java Basics - Anfänger-Themen 115
V Switch Methode macht Code kaputt Java Basics - Anfänger-Themen 18
J Parameterübergabe in switch? Java Basics - Anfänger-Themen 2
M Switch Java Basics - Anfänger-Themen 2
F Erste Schritte Frage zu simplem Taschenrechner(switch) Java Basics - Anfänger-Themen 16
NoMercy BitFlags Programm (switch on/off , swap und isSet) Java Basics - Anfänger-Themen 7
L Taschenrechner mit switch und while funktioniert noch nicht richtig Java Basics - Anfänger-Themen 22
B Problem bei switch statement Java Basics - Anfänger-Themen 4
E Input/Output Switch ausgabe anpassen bzw. anders darstellen Java Basics - Anfänger-Themen 13
A Warum funktioniert switch aber nicht if/else? Java Basics - Anfänger-Themen 23
K Erste Schritte switch - Warum sind long/float/double/... nicht erlaubt? Java Basics - Anfänger-Themen 5
Ponychan95 Erste Schritte Switch fällt immer bis zum default durch Java Basics - Anfänger-Themen 4
P Bei Switch-Anweisung wird default-Anweisung angezeigt Java Basics - Anfänger-Themen 4
D kleiner Taschenrechner mit switch fehlerhaft Java Basics - Anfänger-Themen 1
O This in switch anweisung Java Basics - Anfänger-Themen 5
V Fehlerhafte BufferedReader/switch Benutzung? Java Basics - Anfänger-Themen 2
R Methoden Switch wählt das Falsche Java Basics - Anfänger-Themen 17
B Erste Schritte Addition von double in switch-Anweisung Java Basics - Anfänger-Themen 2
M Endlosschleife bricht durch switch ab Java Basics - Anfänger-Themen 17
D Array in switch Java Basics - Anfänger-Themen 3
Devil0s if vs. switch Java Basics - Anfänger-Themen 27
F Reset in der switch Anweisung Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben