# Würfel mit Suche



## SharkFoce (8. Feb 2016)

Hallo,

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


```
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


----------



## Flown (8. Feb 2016)

Verwende das nächste mal bitte Code-Tags: [code=java]//JAVA CODE HERE[/code]


----------



## SharkFoce (8. Feb 2016)

Alles klar, danke für die Information. Mach ich nächstes mal 

Gruß

P.S.: Hoffe auf Antworten


----------



## Tarrew (8. Feb 2016)

Alle generierten Zahlen in eine List einfügen.
Dann mit contains() überprüfen ob die Zahl schon generiert wurde.


----------



## kneitzel (9. Feb 2016)

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 (9. Feb 2016)

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 (9. Feb 2016)

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:

```
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.

```
for(int i=0; i<array.length; i++){
                  //hier prüfen ob Zahl an dem Index i mit 'gesucht' übereinstimmt.
        }
```


----------



## SharkFoce (11. Feb 2016)

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. 

```
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 (11. Feb 2016)

```
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 (11. Feb 2016)

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.


----------

