zweidimensionales Array



  • 314159265358979 schrieb:

    Worauf ich hinaus will damit? Lustigerweise habe ich nie die Probleme, die immer irgendwo kritisiert werden. Entweder, ich bin einfach der Oberprofi, oder alle anderen sind doof. Suchs dir aus. 😉

    Du bist zu gut für dieses Forum, geh weg.
    Such dir andere Aufgaben, zum Beispiel deinen Grundschulabschluss machen.



  • Netter Versuch. 😃
    Finds voll süß, dass ich nun in deiner Sig bin. Dazu fällt mir folgendes Zitat ein:

    Du hast es geschafft. Du bist zur Identifikationsfigur des Bösens etc. aufgestiegen. Jetzt gehörst du zu einer Reihe von großartigen Leute wie ..., ... und meiner Wenigkeit.



  • Wie niedlich TyRoXx versucht, PI zu dissen 🙄



  • 314159265358979 schrieb:

    Netter Versuch. 😃
    Finds voll süß, dass ich nun in deiner Sig bin. Dazu fällt mir folgendes Zitat ein:

    Du hast es geschafft. Du bist zur Identifikationsfigur des Bösens etc. aufgestiegen. Jetzt gehörst du zu einer Reihe von großartigen Leute wie ..., ... und meiner Wenigkeit.

    Hacker schrieb:

    Wie niedlich TyRoXx versucht, PI zu dissen 🙄

    Mitläufer



  • TyRoXx schrieb:

    314159265358979 schrieb:

    Netter Versuch. 😃
    Finds voll süß, dass ich nun in deiner Sig bin. Dazu fällt mir folgendes Zitat ein:

    Du hast es geschafft. Du bist zur Identifikationsfigur des Bösens etc. aufgestiegen. Jetzt gehörst du zu einer Reihe von großartigen Leute wie ..., ... und meiner Wenigkeit.

    Hacker schrieb:

    Wie niedlich TyRoXx versucht, PI zu dissen 🙄

    Mitläufer

    Nein, es war nur niedlich, wie du versuchst mit einem so lächerlichen Spruch Aufmerksamkeit zu erregen (naja, erregen würdest du wahrscheinlich sowieso nichts).

    Edit: Haha, ist einfach zu komisch das du es in deine Signatur schreibst. Wieviel unnötiger wirste denn noch?



  • Hacker schrieb:

    Nein, es war nur niedlich, wie du versuchst mit einem so lächerlichen Spruch Aufmerksamkeit zu erregen (naja, erregen würdest du wahrscheinlich sowieso nichts).

    Edit: Haha, ist einfach zu komisch das du es in deine Signatur schreibst. Wieviel unnötiger wirste denn noch?

    Hat doch funktioniert, und dir fällt auch nichts besseres ein.

    Die Signatur hat er sich verdient, nicht nur heute.



  • TyRoXx schrieb:

    Die Signatur hat er sich verdient, nicht nur heute.

    Deine Signatur bestätigt eigentlich nur: Neid ist, wenn man Niveau von unten betrachtet.



  • Da habe ich ja eine Diskussion verursacht... 😞

    Hilft mir jedoch gar nichts. ich bin physiker und nicht informatiker. das ist mein erster versuch in oop (könnte ich eventuell jemanden den Code schicken, der mir den code verbessert mit konkrete Kritiken und Begründung?)

    Noch eine andere Frage zum zweidimensionalen array:

    ich sollte aus einem array 100X100 jeden spin einmal zufällig betrachten. dabei soll jeder spin nur einmal gewählt werden.

    wie mache ich das?
    meine idee wäre die stellen zu nummerieren von 1 bis 10000 und dann wie bei den lottozahlen kontrollieren, ob eine doppelte zahl entdeckt wurde.

    #include <iostream>
    #include <stdlib.h>
    using namespace std;

    int main()
    {
        int lotto[6];
        int i, j;
        bool neueZahl;
    
        srand(0);
        for(i=0; i<6; i++) // ziehe nacheinander sechs Zahlen
        {
            do  // wiederhole die Ziehung, bis die neue Zahl
            {   // nicht mit einer der vorigen identisch ist.
                lotto[i] = rand() % 49 + 1;
                neueZahl = true; // positive Grundeinstellung
                for (j=0; j<i; j++)
                {  // durchlaufe alle bisher gezogenen Kugeln
                    if (lotto[j]==lotto[i])
                    { // Hier wurde ein Doppelter entdeckt
                        neueZahl = false;
                    }
                }
            } while (!neueZahl);
        }
        for (i=0; i<6; i++)
        {
            cout << lotto[i] << " ";
        }
        cout << endl;
    }
    

    (aus willemer, einstieg in c++)

    gibt es da eine andere methode?

    danke
    nijntje



  • Der naechste Thread, der von den Kiddies Pi und Hacker zerstoert wurde. 👎



  • das heisst??

    soll ich einen neuen thread öffnen oder mich nach einem anderen forum umsehen???
    oder kannst du mir da helfen...



  • nijntje schrieb:

    soll ich einen neuen thread öffnen oder mich nach einem anderen forum umsehen???

    Einfach Pi, Hacker und alle Diskussionen um sie ignorieren.

    Zu deinem Problem: Da du jedes Element genau einmal betrachten möchtest, suchst du eigentlich eine zufällige Permutation. Dafür gibts std::random_shuffle aus <algorithm> .



  • nijntje schrieb:

    das heisst??

    Dass du dich nicht von irgendwelchen Trollen verunsichern lassen solltest.

    Also: Kommt die zufällige Betrachtung von Werten in einem Array, die läuft bis alle Werte betrachtet wurden und keinen Wert doppelt betrachtet, nicht einer zufälligen Reihenfolge gleich?

    int main()
    {
      std::vector<Spin> spins;
      // Füllen
      std::random_shuffle(spins.begin(), spins.end());
      // Alles durchgehen
    }
    

    http://www.cplusplus.com/reference/stl/vector/
    http://www.cplusplus.com/reference/algorithm/random_shuffle/



  • Ich lass mir eben nicht ans Bein pissen. Deal with it.



  • 314159265358979 schrieb:

    Ich lass mir eben nicht ans Bein pissen. Deal with it.

    Stell dich nur als Opfer da. Realitaet: Du bist unsymapthisch, arrogant, aggressiv und verhaeltst dich wie ein bockiges Kleinkind.



  • Michael E. schrieb:

    Einfach Pi, Hacker und alle Diskussionen um sie ignorieren.

    Kommst das eigentlich mal in die FAQ?



  • Damit kann ich leben 😉



  • Merkst du nicht langsam mal selber, wie peinlich du bist und wie viele Threads du zerstoerst mit deiner aggressiven, klugscheisserischen Art?

    In grossen anderen Foren waert ihr schon lange gesperrt worden.



  • danke michael e. und cooky451,

    ich sollte aber auch die position dieser spins wissen, damit ich die energie der nächsten nachbarn ausrechnen kann.

    also von site[i][j] sollte ich das i und j zufällig wählen. und ein sweep sollte alle 100x100 spins abdecken. mit i_right(i,j) berechne ich z.B in einer funktion die Energie der nachbarn auf der rechten seite des spins.

    langsam verlier ich den überblick. wahrscheinlich kann man das alles einfacher machen.

    aber vielleicht hat noch jemand einen tipp

    danke vorerst mal



  • nijntje schrieb:

    langsam verlier ich den überblick. wahrscheinlich kann man das alles einfacher machen.

    Ich zumindest habe ihn verloren. Erkläre einfach mal ausführlich und von vorne, was genau das Programm können soll. Vergiss dabei völlig irgendwelche Einschränkungen was C++ angeht, erkläre einfach nur das zu lösende Problem.

    Denn solange du keine direkte Frage zu C++ hast, ist das die einzige Möglichkeit dir zu helfen. Ich persönlich habe z.B. noch nicht verstanden, was genau du eigentlich erreichen möchtest.



  • Geh doch über ein Hilfsarray, das die Indizes der Spins speichert. Wenn du also 100 Spins hast füllst du das Array mit den Werten 0-99 und mischt es dann mit std::random_shuffle . Damit hast du also die Indizes gemischt und kannst anhand des aktuellen Index den linken und rechten Nachbarn betrachten.


Log in to reply