[Anfänger] Arg Array...Ich brauche Hilfe

  • Gar nix. Die Zeile ist so sonnenklar, dass ein Kommentar sich wie eine Verarschung des Codereaders liest. Es ist einfach ein Klassikerbeispiel, wie Kommentare NICHT aussehen sollen. Kommentare sollten dort stehen, wo etwas nicht offensichtlich ist. "Weise der Variable i den Wert 1 zu" für "i = 1;" wäre ein anderes Beispiel.

    Dipper dipper dii dipper dii dipper dii duuu

  • Zitat von sauzachn

    Gar nix. Die Zeile ist so sonnenklar, dass ein Kommentar sich wie eine Verarschung des Codereaders liest. Es ist einfach ein Klassikerbeispiel, wie Kommentare NICHT aussehen sollen. Kommentare sollten dort stehen, wo etwas nicht offensichtlich ist. "Weise der Variable i den Wert 1 zu" für "i = 1;" wäre ein anderes Beispiel.

    Da der Starter des Threads ein absoluter Beginner war und dieser weder wußte was ein Array ist noch wie ein Vergleich durchzuführen ist, dachte ich, es entspricht einem gewissen Maße an Zuvorkommenheit und Freundlichkeit diesem gegenüber das kleine Geheimnis von i++ aufzudecken. :thumb:

    greets,

    leadpen

  • Am besten für ihn wäre, dass er seine Hausaufgaben selbst erledigt, weil er so wie es jetzt ist beim nächsten Beispiel wieder hängen wird. So gesehen ist eine fertig ausprogrammierte Lösung das Unfreundlichste, was du ihm antun kannst :)

    Dipper dipper dii dipper dii dipper dii duuu

  • Zitat von sauzachn

    Am besten für ihn wäre, dass er seine Hausaufgaben selbst erledigt, weil er so wie es jetzt ist beim nächsten Beispiel wieder hängen wird. So gesehen ist eine fertig ausprogrammierte Lösung das Unfreundlichste, was du ihm antun kannst :)


    hast recht, aber ein kleiner Lerneffekt wird vielleicht trotzdem dabei sein :)
    Da das Startdatum des Threads ohnehin schon ein Monat her ist wird's ihm wohl auch nichts mehr bringen :verycool:

    greets,

    leadpen

  • Wo ist das Problem bitte?????

    double z;
    double [] a=new double[100];

    for(i=0;i<100;){

    z=99*Math.random()+1;

    for(int j=0;j<i;j++){
    if(z==a[j]){
    z=101;
    break;
    }
    }

    if(z!=101){
    a[i]=z;
    i++
    }
    }

    Geht zwar eleganter... Aber scheiß drauf.
    Sowas MUSS man als Informatiker können.

  • Zitat von hellsmurf

    Sowas MUSS man als Informatiker können.


    Ich glaube nicht das CrazyInu Informatiker ist und ich wuesste auch nicht dass er das hier behaupted haette.

    Zitat von hellsmurf

    Geht zwar eleganter...


    Ganz bestimmt sogar:

    Code
    List<Integer> numbers = new ArrayList<Integer>();
    for(int i=0;numbers.size()<N;i++){numbers.add(i);}
    Collections.shuffle(numbers);


    oder

    Code
    Set<Integer> numbers = new HashSet<Integer>();
    while (set.size() < N) { numbers.add(new Random().nextInt(N)+1); }
  • Code
    Set<Integer> numbers = new HashSet<Integer>();
    while (set.size() < N) { numbers.add(new Random().nextInt(N)+1); }


    Potentiell nicht-terminierend.

  • Zitat von Spockman
    Code
    Set<Integer> numbers = new HashSet<Integer>();
    while (set.size() < N) { numbers.add(new Random().nextInt(N)+1); }


    Potentiell nicht-terminierend.

    diese 2te loesung steht deshalb da, weil mein erstes vorgehen nicht mehr klappt, wenn die menge der moeglichen werte groesser sein soll als die anzahl der ergebnisse.

    btw, wenn wir jetzt mit anderen sprachen um uns werfen:

    Code
    (1..100).sort_by{rand}
  • Zitat von Spockman
    Code
    Set<Integer> numbers = new HashSet<Integer>();
    while (set.size() < N) { numbers.add(new Random().nextInt(N)+1); }


    Potentiell nicht-terminierend.

    diese 2te loesung steht deshalb da, weil mein erstes vorgehen nicht mehr klappt, wenn die menge der moeglichen werte groesser sein soll als die anzahl der ergebnisse.

    btw, da wir jetzt anscheinend bei anderen Sprachen angelangt sind:

    Code
    (1..100).sort_by{rand}

    (ruby)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!