Würfel mit Suche

SharkFoce

Mitglied
Hallo,

Ich muss einen Würfel-Script schreiben. Habe bis jetzt folgenden Ansatz.

Java:
import java.util.Random;

public class Zufallsgenerator
{

  public static void main(String[] args)
  {
    erstelleZufallsZahl();
  }

  public static void erstelleZufallsZahl()
  {
    Random zufallsgenerator = new Random();

    for (int i = 1; i < 6; i++)
    {
      int zahl = zufallsgenerator.nextInt(6);
      System.out.println(zahl);    
      int x;
    }
  }
}

Der Script generiert 5 Zufallszahlen. Nun will ich eine Suche einbauen. Man soll eine Zahl eingeben können und es soll überprüft werden, ob die Zahl generiert worden ist oder nicht. Welche Position oder wie viel mal die Zahl generiert worden ist, ist erst mal Wurst :)
Habe was von sequential search gesehen, doch ich kriege es nicht hin :/
Würde mich auf eine Hilfe freuen.

MfG

Shark
 
Zuletzt bearbeitet von einem Moderator:
K

kneitzel

Gast
Oder falls die Klassen aus dem Framework nicht benutzt werden dürfen:

Überleg Dir, wie Du die Zufallszahlen speichern kannst. (Wie kan man 5 int speichern?) Wenn du die Zufallszahlen gespeichert hast, dann kannst du auch prüfen, ob eine bestimmte Zahl gezogen wurde.
 

SharkFoce

Mitglied
Danke schonmal für die Antworten, jedoch liegt mir Informatik bzw. Java garnicht.
Ich habe versucht mit einem Scanner die Infos, die ich in der Konsole eingebe einzulesen, jedoch funktioniert es nicht. Es zeigt immer meine gewürfelte Zahl an. Würde mich über Antworten die sich direkt auf den Scanner / lineare Suche beziehen freuen - Danke vielmals
 

Tarrew

Top Contributor
Also 1. musst du deine Zufallszahlen irgendwie abspeichern damit du sie auch später durchsuchen kannst.
zB. in einem Array oder einer List.

Wenn du eine Zahl suchen willst kannst du die zu suchende Zahl so auslesen:
Java:
        Scanner s = new Scanner(System.in);
        System.out.println("Gesuchte Zahl: ");
        int gesucht = s.nextInt();

Damit das Array durchlaufen und prüfen ob die Zahl vorhanden ist.
Java:
        for(int i=0; i<array.length; i++){
                  //hier prüfen ob Zahl an dem Index i mit 'gesucht' übereinstimmt.
        }
 

SharkFoce

Mitglied
Habe versucht eine Arrayliste zu erstellen. Soweit so Gut. Doch nun weiß ich nicht was ich hinter dem add in die () hinzufügen muss :/ Hier der Code soweit.
Java:
package wuerfel;

import java.util.*;

public class Wuerfel
{

  public static void main(String[] args)
  {
    erstelleZufallsZahl();
  }

  public static void erstelleZufallsZahl()
  {
    Random zufallsgenerator = new Random();

    for (int i = 1; i < 6; i++)
    {
      int zahl = zufallsgenerator.nextInt(6);
      System.out.println(zahl);    
        }
    ArrayList<String> generiertezahlen = new ArrayList<String>();

     
     generiertezahlen.add();

     
     System.out.println("Generierte Zahlen"+generiertezahlen);
      }
  }

Könnt ihr mir da helfen. Danach versuche ich mich an den Scanner etc.

MfG
 

InfectedBytes

Top Contributor
Java:
ArrayList<String> generiertezahlen =new ArrayList<String>();
damit hast du nun eine ArrayListe, welche in der Lage ist Strings zu speichern.
Aber natürlich musst du diese erstmal per add hinzufügen: generierteZahlen.add("test123")

Da du allerdings ja eigentlich nur Zahlen speichern willst, ist es nicht ideal eine ArrayList<String> zu erstellen, stattdessen wäre ArrayList<Integer> besser
 

Bitfehler

Bekanntes Mitglied
So wie du deine ArrayList erstellst, wird erwartet, dass du Strings verwaltet möchtest. Ich befürchte, aber du möchtest Zahlen speichern (Das würde nur gehen, wenn du vorher deine Zahl zu einem String konvertierst. Das macht man aber in diesem Fall nicht)
Des Weiteren erstelltst du deine Liste an der falschen Stelle im Code, da sie bereits verfügbar sein muss, wenn du eine Zahl speichern willst. Ok, das ist sie im Moment, aber auch nur weil das add ebenfalls an der falschen Stelle ist.
Das add müsste in die Schleife.
 

Neue Themen


Oben