Brauche Hilfe bei Konsolen "4 gewinnt"-Spiel in C++



  • 😮
    Das mit dem Buch wäre aber schon wichtig. Sowas müssen Deine Eltern doch zahlen. Sag ihnen, daß ich empfehle, daß Du ein gutes C++-Buch bekommst.
    😉

    Ich würde hier keinen vector nehmen, sondern ein zweidimensionales Array. Wenn vorhanden auch array<array<..., aber keinen Vector. Das wäre einfach das falsche Mittel, so wie woanders endl, gell?



  • Ich hab gerade hier 4g-Code liegen. Ist zwar unmodern, von 2001, aber macht's schon mit Array und beantwortet Frage 3 recht hübsch. http://www.megaupload.com/?d=KT8VA6PC



  • volkard schrieb:

    Das wäre einfach das falsche Mittel, so wie woanders endl, gell?

    Agreed 👍


  • Mod

    volkard schrieb:

    Ich würde hier keinen vector nehmen, sondern ein zweidimensionales Array. Wenn vorhanden auch array<array<..., aber keinen Vector. Das wäre einfach das falsche Mittel, so wie woanders endl, gell?

    Ich denke schon an das verschärfte 4 gewinnt mit dynamischer Spielfeldgröße 😉



  • So, erstmal danke für die Antworten. Werde mir den Code mal angucken und mich im Internet über die noch nicht bekannten Elemente darin informieren.
    Wegen dem Buch habe ich auch nochmal bei meiner Mutter nachgefragt, die erstmal schockiert war, dass so ein Buch mehr als 10€ kostet. 😉
    Nach einem bisschen diskuttieren hat sie sich dann aber doch bereit erklärt, mir eins zu kaufen, woraufhin ich natürlich direkt die Bestellung bei Amazon abgeschickt habe, bevor sie es sich nochmal anders überlegt. 😃


  • Mod

    Hoffentlich hat der Autor nicht die Initialen J.W.?



  • Du könntest auch ersteinmal in der Bibliothek deines Vertrauens schauen. Falls du in der Nähe einer Uni wohnst, wäre dies die erste Anlaufstelle.

    Tipp: Eventuell siehst du etwas zu jung aus, am besten das linke Bein leicht nachziehen 😃



  • SeppJ schrieb:

    Hoffentlich hat der Autor nicht die Initialen J.W.?

    Nein, hat er nicht. 😉



  • SeppJ schrieb:

    Ich denke schon an das verschärfte 4 gewinnt mit dynamischer Spielfeldgröße 😉

    Geheimagentenlaserhindernisviergewinnt. 🙂
    http://www.youtube.com/watch?v=lnz_YueCt5U



  • Zum Experten wirst du schon noch, wenn du dran bleibst. Wir haben alle mal ähnlich angefangen und es kann absolut nicht schaden, früh mit sowas zu beginnen. Umso leichter wird es dir später fallen.

    1. 2D-Array, wurde ja schon genannt. Als Typ schlage ich der Einfachheit halber einen Integer vor. Damit gilt dann: 0 = "leer", 1 = "Spieler 1", 2 = "Spieler 2".
    2. Du weißt, dass der Stein in Spalte X fallen soll. Du läufst dann wie folgt über dein Array (fields[Spalte][Reihe]):
    for (size_t y = 0; y < anzahlReihen; ++y)
    {
        if (fields[x][y] == 0)
        {
            // Reihe y gefunden, Stein setzen (Pseudocode!)
            fields[x][y] = "Spieler 1"|"Spieler 2";
    
            break; // Aus der Schleife springen
        }
    }
    
    1. Hier würde ich so rangehen: Du durchläufst die Felder in 2 Schleifen spalten- und reihenweise und wiederum innerhalb kommen zwei weiter Schleifen hinzu, die die Richtung der "Suche" angeben. Sie gehen von -1 bis 1, damit steht -1 für links/oben und 1 für rechts/unten. Du brauchst diese Richtung einfach auf die aktuelle Position zu addieren und zu überprüfen, ob du immernoch einen gleichfarbigen Stein findest. Wenn du bei 4 angekommen bist, hast du eine Reihe gefunden.

Anmelden zum Antworten