Auf Thema antworten

Hallo,


so wahnsinnig wesentlich anders ist mein Vorschlag nicht, doch finde ich ihn deutlich übersichtlicher:


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

        int[] arrayZufall = new int[12];

        Random rnd = new Random();


        for (int i = 0; i < arrayZufall.length;) {

         

            // trial

            arrayZufall[i] = rnd.nextInt((20 - 1) + 1) + 1;


            // check

            int j;

            for (j = 0; j < i; j++) {

                if (arrayZufall[i] == arrayZufall[j]) break;

            }

            if (j==i) i++;        // if valid, next i


        }

     

        // output

        for (int i = 0; i < arrayZufall.length; i++) {

            System.out.println(arrayZufall[i]);

        }

    }

[/code]Dir ist hoffentlich klar, dass bei dieser "Aufgabenstellung" (unabhängig, welchen Code du verwendest) das Array nicht beliebig groß gemacht werden darf, es droht sonst natürlich eine Endlosschleife?!


Grüße, Ulrich



Oben