Speichern von Würfelwürfen in einem Array

JavaMatze

Mitglied
Hallo Leute,

ich bin das erste Mal in diesem Forum und ich hoffe, dass Ihr mir weiterhelfen könnt. Ich nehme an der Uni bei einem Programmierkurs in Java teil und wir haben so Programmieraufgaben bekommen.

Eine Aufgabe lautet, dass wir Zufallszahlen eines Würfels über die Console in Java eingeben sollen und dieser diese dann speichert und dementsprechend bei der Eingabe vergleicht, ob die Zahlen in den Bereich von 1-6 passen. Also 7 wäre unzulässig.
Das ganze soll mit einem Array funktionieren.

Danach sollen wir auswerten wie häufig eine Augenzahlen einegegeben worden ist.
Ich komme damit aber nicht ganz zurecht.
Ich weiß z.B. nicht wie die Zahlen einegelesen werden können und dann geschaut werden kann ob eine Zahle jetzt richtig oder falsch ist.
Bisher habe ich folgendes gemacht:

Java:
public class A05 {
    
    public static void main(String[] args) {
    
    int []belegung = new int[7];
    int zahl;
    java.util.Scanner eingabe= new java.util.Scanner(System.in);
    
    while(eingabe.hasNextInt()){
       zahl=eingabe.nextInt();
               
           
}
}
}

Ich hoffe, dass Ihr mir weiterhelfn könnt!

Vielen Dank im Vorraus!

Matthias
 
Hier ein kommentiertes Beispiel hoffe, damit kannst was anfangen 😀

Java:
public static void main(String[] args) {

		int[] belegung = new int[6];
		Scanner eingabe = new Scanner(System.in);

		// Lese solange es eine "Zahl" zu lesen gibt
		while (eingabe.hasNextInt()) {

                //Zahl ruhig hier drin erst einsetzen kleinster Scope aber is erstmal egal :D
		int zahl = eingabe.nextInt();

			// Ist die Zahl im Wertebereich
			if ((zahl > 0) && (zahl < 7)) {
				//Zähle die Belegung einen Hoch (Ein Array fängt bei 0 an)
				belegung[zahl - 1] = belegung[zahl-1] + 1; //hier wäre auch belegung[zahl-1]++ möglich
			} else {
				System.out.println("Falsche Zahl");
			}
		}

		for (int i = 0; i < belegung.length; i++) {
			System.out.println("Zahl" + (i + 1) + " kam " + belegung[i]
					+ " vor!");
		}
	}
 
Zuletzt bearbeitet:
:rtfm:Hey und vielen Dank,

in der Aufgabe steht noch das die Stelle 0 im Array nicht genutzt werden soll. Muss ich dann die Positionen einfach um eine Zahl nach rechts verschieben?

Dann sollen wir auch noch die Zahlen eben zählen und die Anzahl der "Würfe" angeben, die Anzahl der Würfe und den Mittelwert abgeben. Wie kann ich das realisieren?

Ich wäre echt dankbar, wenn Du mir nochmal weiterhelfen könntest!

Vielen Dank
Matthias
 
Also wenn ihr die 0 ignorieren sollt, dann musst du das Array wieder auf die Größe 7 statt 6 vergrößern und dort, wo ich i-1 gemacht hab, machst du einfach nur i.

Zum Mitzählen der gültigen Würfe, brauchst einen Zähler, den du bei jedem gültigen Wurf um einen hochzählst ... kannst ja mal selber versuchen, ob du da ne Idee hast, wie du das hinbekommst 🙂
 
Hey vielen Dank nchmal,

trotzdem habe ich noch eine Frage und zwar soll ich auch die Zahl wieder ausgeben, die falsch eingegeben wurde z.B. -5 oder so. Wie muss ich das machen? Speicher ich das in noch einer Variable?

Also z.B.

3 4 -5 3 2 *

-5 keine Augenzahl

Vielen Dank

Matthias
 
wenn du die nur einmal ausgeben sollst, kannst du das so machen
Java:
                System.out.println("Falsche Zahl "+zahl );
 

Zurück
Oben