Skip to main content

Java Übung 31: Speichere deine Würfe im Array

In dieser Java Übung soll ein Würfelspiel simuliert werden.

  • Lege eine Klasse namens, Würfelspiel an.
  • Diese Klasse enthält eine statische Methode, namens würfeln().
    Diese Methode erwartet einen Parameter vom Datentyp Integer, namens „anzahlWuerfe“.
    Diese Variable/Parameter repräsentiert die Anzahl der Würfe.
  • Nachdem der Methode die Anzahl der Würfe übergeben wurde, soll die Methode Zufallszahlen zwischen 1 und Sechs würfeln und diese in einem Array speichern.
  • Nachdem alle Werte im Array gespeichert wurden, werden alle Werte auf der Konsole ausgegeben.
  • Zu Kontrollzwecken rufe die Methode wuerfeln() in der main-Methode auf und übergib ihr die Zahl 10.


Für die Lösung dieser Java Übung brauchst du ein Integer-Array

Und dieses Array wird im Methodenrumpf der würfeln()-Methode angelegt.

public class WuerfelSpiel {
 
static void wuerfeln(int anzahlWuerfe){
int [] wuerfe = new int [anzahlWuerfe];//Array mit Länge aus übergebenen Parameter
}
public static void main(String[] args) {
wuerfeln(10);//Aufruf mit 1o Würfen
}
}

Die Länge des Arrays entspricht dem Wert des übergebenen Parameters.
In dem Beispielfall würdest du der Methode beim Aufruf den Wert 10 übergeben und das Array hätte die Länge 10.

Kümmern wir uns um die Zufallszahlen.

So lassen sich Zufallszahlen im Array speichern.

Das wäre der Java Code dazu:
wuerfe[i]=(int)(Math.random()*6)+1;

  • Zufallszahlen bekommst du über den Rückgabewert der Methode Math.Random().
  • Diese Zufallszahlen sind dann allerdings Kommazahlen zwischen 0 und 1.
    Da du Zufallszahlen eines Würfels simulieren möchtest, müssen diese aber zwischen 1 und 6 sein.
    Wenn du den Rückgabewert der Methode Math.Random() mit sechs multiplizierst, erhältst du Kommazahlen zwischen 0 und 6.
    Also dann: Math.Random()*6
  • Indem du diesen Wert um eins erhöhst, schließt du die Null als Zufallszahl aus.
    Die Zahlen beginnen dann erst bei eins.
    (Math.random()*6)+1
  • Da du bei einem Würfelwurf keine Kommazahlen haben möchtest, musst du den Kommawert in einen Integerwert wandeln.
    (int)(Math.random()*6)+1
  • Und diese Rückgabe speicherst du dann in dem Array „wuerfe“ unter dem entsprechenden Index ab.
    wuerfe[i]=(int)(Math.random()*6)+1

So – Zufallszahlen können erzeugt werden.
Jetzt brauchst du noch eine for-Schleife um das Array zu füllen.

So kannst du das Array mit einer for-Schleife füllen.

public class WuerfelSpiel {
 
static void wuerfeln(int anzahlWuerfe){
int [] wuerfe = new int [anzahlWuerfe];
 
for (int i =0; i<wuerfe.length; i++){
wuerfe[i]=(int)(Math.random()*6)+1;//Zufallszahlen werden an der Stelle i gespeichert
}                
}
public static void main(String[] args) {
wuerfeln(10);//Aufruf mit 1o Würfen
}
}

Die for-Schleife startet beim Wert 0.
int i = 0
Dies entspricht auch dem Index des ersten Arrayfaches.

Die Abbruchbedingung der Schleife, wird durch die Länge des Arrays bestimmt.
i < wuerfe.length

Da das Array 10 Fächer hat und das erste Fach den Index 0, wird die Schleife 10-mal durchlaufen.
Und jedes Mal wird eine neue Zufallszahl in das Array an der Stelle i gespeichert.

Und nach genau dem gleichen Prinzip, legst du die Schleife zum Lesen des Arrays an.

So kannst du die Werte aus dem Array lesen.

Anstatt die Werte zu speichern, lässt du dir die Werte im Rumpf der Schleife ausgeben.

Und dazu nutzt du die System.out.println()-Anweisung mit dem jeweiligen Fach.
System.out.println(wuerfe[i])

public class WuerfelSpiel {
 
static void wuerfeln(int anzahlWuerfe){
int [] wuerfe = new int [anzahlWuerfe];
 
//Schleife zum Füllen des Arrays
for (int i =0; i<wuerfe.length; i++){
wuerfe[i]=(int)(Math.random()*6)+1;//Zufallszahlen werden an der Stelle i gespeichert
}
 
//Schleife zum Lesen des Arrays
for (int i =0; i<wuerfe.length; i++){
System.out.println(wuerfe[i]);//Ausgabe des Wertes im Fach i
} 
}
public static void main(String[] args) {
wuerfeln(10);//Aufruf mit 1o Würfen
}
}

Und das ist die komplette Lösung zu dieser Java Übung.

Na wieviele Sechser würfelt dein Programm? 🙂


Ähnliche Beiträge

8 Java Datentypen, die du kennen solltest

Java Datentypen

Java Datentypen Ich gebe zu, ich hasse dieses Thema. Denn es ist eigentlich nichts weiter als graue Theorie. Dennoch müssen wir dieses Thema behandeln. Um schnell in das Thema zu kommen, stelle ich dir eine Übersicht aller primitiven Datentypen zur Verfügung. Wieso primitive? Es gibt außer den primitiven Datentypen, noch Referenztypen. Und diese Referenztypen sind […]

3 Möglichkeiten – Java Strings verketten und zusammenfügen

Java Strings verketten

Kennst du dieses Relikt längst vergangener Tage? Ein Brief. Ja früher einmal war es üblich, Briefe zu schreiben. Lange bevor es Smartphones oder Email gab. Man stelle sich einmal vor…. Die Leute mussten sich hinsetzen mit einem Blatt und einem Stift – und richtig schreiben. Nein nicht tippen – schreiben. 🙂 Grausame Welt, oder? Aber […]

Java Übung 17: Char-Zeichen mit For-Schleife

Java Übung Char Zeichen For Schleife

In dieser Java Übung werden wir uns die Zeichen des Character Datentypen näher anschauen. Die einzelnen Zeichen sollen auf der Konsole ausgegeben werden. Und wie? Das ganze sollst du mit einer For Schleife machen. Erstelle deshalb eine Klasse „CharZeichen“. In dieser Klasse implementierst du dann eine Klassenmethode, namens „gibZeichen“. Und im Methodenrumpf durchläuft eine For-Schleife […]

Java Übung 26 – Das erste kleine Java Spiel

Java Übung Zahlenraten

In dieser Java Übung geht es darum ein kleines Java-Spiel zu erstellen. Und zwar Zahlen raten. Was kannst du dir darunter vorstellen? Du gibst einen bestimmten Wertebereich an. Zum Beispiel 0 bis 100. Und das Java Programm erstellt eine Zufallszahl in diesem Bereich. Dann fordert dich das Programm auf, die Zahl zu raten. Du gibst […]

Java Objekte leben auf dem Heap

Java-Objekte-Heap

Java hat eine interne Speicherverwaltung. Eigentlich ist es nicht nur eine. Es sind mehrere.   Uns interessieren nur zwei. Methoden und lokale Variablen werden auf dem Stack verwaltet. Und die Speicherverwaltung für Java Objekte und den Instanzvariablen findet auf dem Heap statt.   Ja wieso braucht Java eigentlich zwei Speichersysteme?   Es ist ganz einfach. […]

So kannst du ein neues Java Projekt mit Eclipse anlegen und konfigurieren

Java Projekt anlegen Eclipse

In diesem Beitrag möchte ich dir zeigen, wie du ein neues Java Projekt mit Eclipse anlegen kannst. Ich werde dir außerdem einen kurzen Überblick über die Konfigurationsmöglichkeiten geben. Dann gebe ich dir noch eine ganz einfache Schritt-für-Schritt-Anleitung für dein allererstes Java Projekt und ich zeige dir, was nach dem Anlegen des Projektes eigentlich passiert ist.

Der wichtige Unterschied zwischen Java Methoden

Java Methoden Unterschied

Jetzt machen wir Nägel mit Köpfen. Dieses Sprichwort stammt aus den Anfängen des Industriezeitalters. Denn früher wurden Nägel nicht industriell, sondern per Hand gefertigt. Und da kam es schon einmal vor, dass versehentlich Nägel ohne Kopf produziert wurden. Was blieb ist das Sprichwort „Nägel mit Köpfen“ Und dieses steht sinngemäß für eine schnelle, qualitativ hochwertige […]

Drei Möglichkeiten um Java Objekte zu zerstören

Java Objekte zerstören

Java Objekte leben genau solange, wie eine Referenzvariable auf sie zeigt. Wenn dieser Zeiger nicht mehr existiert, wird dieses Objekt aufgeben. Und wenn dieses Objekt erst einmal aufgegeben wurde, dann kommt der Garbage Collector und entsorgt dieses. Aber wie kannst du nun am Sinnvollsten Objekte aufgeben? Lass es uns herausfinden.

Ohne Abstraktion ergibt Java Polymorphie wenig Sinn

Java Polymorphie Abstraktionsprinzip

Kennst du den Film Matrix? Denn kennst du vielleicht auch die Botschaft, welche der Protagonist am Anfang des Filmes erhält. „Folge dem weißen Kaninchen.“ Und so ähnlich ist es jetzt auch in diesem Beitrag. „Wir dringen immer tiefer in den Kaninchenbau ein.“ 🙂 Ganz so wie im Film wird es nicht. Aber bevor wir mit […]

Java Methoden mit variabler Argumentenanzahl – VarArgs

Java Methoden mit variabler Argumentenanzahl VarArgs

Du kennst das noch. Kopfrechnen und zwar auf Zeit. So etwas ist das Standardprogramm in den Schulklassen 1 bis 5. Irgendwann, in Klasse 6 oder 7, kommt der Taschenrechner ins Spiel und Kopfrechnen ist aus dem Schulalltag gestrichen. Schade eigentlich. Dabei kann man diese Disziplin auch wunderbar in kleinen Spielen unterbringen. Ich erinnere mich noch: […]