# Lottogenerator programmieren



## Niyo (6. Sep 2017)

Hey, habe erst vor oaar Tagen angefangen mit Java rum zu spielen, und soll jetzt einen Lottogenerator Programmieren, der mir 6 Zahlen zufällig von 1 bis 49 geniriert ohne Dopplungen, und in aufsteigender Reihenfolge (also das die erste zufällige Zahl die Kleinste ist, und die letzte halt die Größte von den Zufälligen). und Die Zusatzzahl soll dann noch mal einzeln ausgegeben werden.
Ich hab schon ein wenig was geschrieben, aber komme nicht ganz weiter damit. vielleicht könnte man mir hier ja ein bisschen helfen? :>



public class Generator {

    public static void main(String[] args) {

boolean[] NeueZahl = new boolean [49];
int[] Glückszahl = new int [6];

/* Zahl[0] = 1te Glückszahl
 * Zahl[1] = 2te Glückszahl
 * Zahl[2] = 3te Glückszahl
 * Zahl[3] = 4te Glückszahl
 * Zahl[4] = 5te Glückszahl
 * Zahl[5] = 6te Glückszahl
 */

for (int zähler = 0; zähler < 6; zähler++) {
    Glückszahl[zähler] = zähler + 1;
    if (zähler ==0) {
        zähler = (int) (Math.random()*49+1);
        Glückszahl [0] = zähler;
        NeueZahl [zähler-1] = true;
    }
    zähler = (int)(Math.random()*49+1);

    while (NeueZahl[zähler-1] == true ){
        zähler = (int)(Math.random()*49 + 1);
    }

    for (int zähler = 0; zähler <= 5; zähler++) {
        System.out.println("Glückszahl" + (zähler + 1) + "ist" + Glückszahl[zähler]);



    }
}





    }

}


----------



## JStein52 (6. Sep 2017)

Nimm das da:

```
// 6 zufaellige Lottozahlen !!
        final int[] ints = new Random().ints(1, 50).distinct().limit(6).toArray();
```


----------



## Niyo (6. Sep 2017)

JStein52 hat gesagt.:


> Nimm das da:
> 
> ```
> // 6 zufaellige Lottozahlen !!
> ...



Ich muss ehrlich gestehen. . . ich weiß nicht wohin damit. :<
Und mir wir angezeigt: "The method ints(int, int) is undefined for the type Random"


----------



## JStein52 (6. Sep 2017)

Du hast schon einen 
	
	
	
	





```
import java.util.Random;
```
drinnen ?
Und wie meinst du wohin damit ? Das ersetzt deinen ganzen Code und im Array ints stehe dann die Lottozahlen.


----------



## Niyo (6. Sep 2017)

JStein52 hat gesagt.:


> Du hast schon einen
> 
> 
> 
> ...



Aber dann habe ich meinen Mist ja komplett umsonst geschrieben. D:


----------



## JStein52 (6. Sep 2017)

Ich habe übersehen dass du es ja noch sortiert haben wolltest:

```
final int[] ints = new Random().ints(1, 50).distinct().limit(6).sorted().toArray();
```


----------



## JStein52 (6. Sep 2017)

Niyo hat gesagt.:


> Aber dann habe ich meinen Mist ja komplett umsonst geschrieben


Jaaa  das Leben kann manchmal hart sein


----------



## JStein52 (6. Sep 2017)

Benutzt du übrigens eine IDE ? Eclipse, NetBeans, IntelliJ ??


----------



## Xyz1 (7. Sep 2017)

Das Thema gab es hier schon tausendmal...


JStein52 hat gesagt.:


> Nimm das da:



Warum nicht `limit` und `distinct` tauschen?


----------



## Niyo (10. Sep 2017)

Okay, danke für eure Hilfe :>


----------



## Xyz1 (15. Sep 2017)

@Niyo :

```
public static void main(String[] args) {
        int[] array = x_aus_y(6, 49);
        String s = Arrays.toString(array);
        System.out.println(s);
    }

    private static int[] x_aus_y(int x, int y) {
        int[] array = new int[x];
        Random random = new Random();
        aLabel:
        for (int i = 0; i < x;) {
            array[i] = random.nextInt(y) + 1;
            for (int j = 0; j < i; j++) {
                if (array[i] == array[j]) {
                    continue aLabel;
                }
            }
            i++;
        }
        return array;
    }
```


----------

