Hilfe bei Spiel



  • Guten Tag Community,

    da ich meine Fähigkeiten beim Programmieren etwas testen möchte und mich verbessern möchte, kam mir die Idee das Nimmm Spiel auf eine etwas besondere Art zu programmieren. Und zwar mit einer Pyramide aus Spielsteinen wo dann der Spieler von einer Reihe beliebig viele Steinen nehmen kann. Soweit so gut. Also hab ich mich erstmal an das Spielfeld gemacht das sieht so aus

    #include <iostream>
    #include <cstring>
    
    using namespace std;
    
    int spielfeld();
    
    int main()
    {
      spielfeld();
      return 0;
    }
    
    int spielfeld()
    {
      int groesse;
      cout << endl;
      cout <<"Wie groß soll das Spielfeld sein? "<<endl;
      cin>>groesse;
      for (int i=0; i<groesse; i++)
      {
        cout << "|";
        for (int j=0; j<i; j++)
        {
          cout << " " << "|";
        }
        cout << endl;
      }
    }
    

    Nun da ich das Spielfeld habe gehe ich einen Schritt weiter und möchte nun beginnen die Steine zu streichen nur leider fehlt mir da jeder Rat wie ich das machen soll. Ich möchte die Steine durch "X" ersetzen und damit kennzeichen das die ausgewählt wurden. Ich verfüge leider nicht über genügen Kentnisse um das Spielfeld in ein 2dimensionales Array abzuspeicher und darauf einen Pointer zeigen zu lassen.

    Bin dankbar für jede Hilfe

    MfG



  • Wenn du die einzelnen Spielsteine in einem std::vector<std::vector<char>> speicherst, kannst du ganz leicht einen beliebigen Stein auswählen, außerdem kannst du die Größe zur Laufzeit festlegen, was ein Array nicht kann. Beispiel:

    std::vector<std::vector<char>> steine(anzahl_zeilen);
    // Hier Zeilen in 'steine' einfügen
    steine[0][3] = 'X'; // Stein in Reihe 0, Spalte 3 auf 'X' setzen
    

    Ich kenne das Spiel selber nicht, aber das soll auch nur ein Lösungsansatz sein 🙂


Log in to reply