Ristinolla C#:lla

vinkkejä?

Oisko kellään vinkkejä miten sais tehtyä 3x3 ristinolla pelin C#:lla?

4

1426

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Palsta__

      Parempi palsta on tuo .Net tuolla ekana, jonne se pisteen takia on järjestetty. C# kun on .NET-kieli.

      Aluksi vois sanoa, että jos haluat piirrellä sen ruudukon siihen, katsopa jostain netistä System.Drawing-luokkien käyttöohjetta. Siihen on enkuksi oppaita.

    • Anonyymi

      Tämä koodi luo yksinkertaisen 3x3 ristinolla pelin C#:lla. Pelaajat vuorottelevat ja voittaja tarkistetaan jokaisen siirron jälkeen. Muokkaa ja laajenna koodia tarpeidesi mukaan.

      ---
      using System;

      class Program
      {
          static char[,] board = new char[3, 3];
          static char currentPlayer = 'X';

          static void Main()
          {
              InitializeBoard();

              bool gameEnded = false;
              while (!gameEnded)
              {
                  PrintBoard();
                  Console.WriteLine("Player " + currentPlayer + "'s turn");

                  int[] move = GetPlayerMove();

                  board[move[0], move[1]] = currentPlayer;

                  if (CheckForWinner())
                  {
                      gameEnded = true;
                      PrintBoard();
                      Console.WriteLine("Player " + currentPlayer + " wins!");
                  }

                  currentPlayer = (currentPlayer == 'X') ? 'O' : 'X';
              }
          }

          static void InitializeBoard()
          {
              for (int i = 0; i < 3; i++)
              {
                  for (int j = 0; j < 3; j++)
                  {
                      board[i, j] = ' ';
                  }
              }
          }

          static void PrintBoard()
          {
              for (int i = 0; i < 3; i++)
              {
                  for (int j = 0; j < 3; j++)
                  {
                      Console.Write(board[i, j]);
                      if (j < 2)
                      {
                          Console.Write("|");
                      }
                  }
                  Console.WriteLine();
                  if (i < 2)
                  {
                      Console.WriteLine("-----");
                  }
              }
          }

          static int[] GetPlayerMove()
          {
              int[] move = new int[2];

              bool validMove = false;
              while (!validMove)
              {
                  Console.WriteLine("Enter row and column (0-2) separated by space:");
                  string[] input = Console.ReadLine().Split(' ');

                  move[0] = int.Parse(input[0]);
                  move[1] = int.Parse(input[1]);

                  if (board[move[0], move[1]] == ' ')
                  {
                      validMove = true;
                  }
                  else
                  {
                      Console.WriteLine("Invalid move, try again.");
                  }
              }

              return move;
          }

          static bool CheckForWinner()
          {
              for (int i = 0; i < 3; i++)
              {
                  if (board[i, 0] == currentPlayer && board[i, 1] == currentPlayer && board[i, 2] == currentPlayer)
                  {
                      return true;
                  }
                  if (board[0, i] == currentPlayer && board[1, i] == currentPlayer && board[2, i] == currentPlayer)
                  {
                      return true;
                  }
              }

              if (board[0, 0] == currentPlayer && board[1, 1] == currentPlayer && board[2, 2] == currentPlayer)
              {
                  return true;
              }
              if (board[0, 2] == currentPlayer && board[1, 1] == currentPlayer && board[2, 0] == currentPlayer)
              {
                  return true;
              }

              return false;
          }
      }

    • Anonyymi
    • Anonyymi

      ChatGPT voi antaa sulle koodin tuolle

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Vesikin maksaa, miksei hengitysilma?

      Jatkuvasti itketään ettei ole rahaa mihinkään, mutta tilastojen mukaan rahaa on enemmän kuin koskaan, joten miksei asial
      Maailman menoa
      10
      1681
    2. Satuolennoista tarinointi ei kuulu peruskoulun tehtäviin

      Opetustunteja on muutenkin käytössä vain rajallinen määrä. Eli nämä satuhommat koulun ulkopuolelle vapaaehtoisiin harras
      Maailman menoa
      131
      1670
    3. Suomalainen perheenisä vaatii Suvivirren esittämisestä hyvityksiä

      Itse lapsena uskonnonopetuksesta vissiin traumoja saanut ihka suomalainen (!) perheenisä vaatii Espoon kaupungilta korva
      Maailman menoa
      253
      1198
    4. Lahkokasteen ja kristillisen kasteen erot

      Raamatun mukaan Kristillisessä yhdessä kasteessa Jumala pesee ja puhdistaa ihmisen sydämen ja poistaa perisynnin kirouks
      Kaste
      422
      1078
    5. Mies profiloin sinut

      Etsit täysin hallittavaa mutta samalla poikkeuksellista ihmistä. Etsit jotain mitä et koskaan tule saamaan.
      Ikävä
      210
      1066
    6. Salainen kastekoulutus

      Millainen on helluntailainen kastekoulutus ja kauanko se kestää ?
      Kaste
      285
      955
    7. Mitä haluaisit

      Tehdä kaivattusi kanssa?
      Ikävä
      128
      939
    8. Heikki Paasosen Marita-vaimo jätti tunteikkaat jäähyväiset: "Tällä kertaa me..."

      Heikki Paasonen on naimisissa Marita Paasosen (os. Alatalo) kanssa ja heillä on kaksi pientä lasta. Nyt koitti aika jätt
      Suomalaiset julkkikset
      3
      887
    9. Pirkanlinna yleisötapahtuma

      Oli todella hyvä tilaisuus. Ja EERO. L. Aivan mahtava tyyppi. Veti rennosti ja asiallisesti. Ja yleisöltä hyviä kysymyks
      Ähtäri
      49
      868
    10. Känsäkoura ja hotelli

      Tietoa kuka ostanut?
      Kuhmo
      10
      865
    Aihe