Ristinolla C#:lla

vinkkejä?

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

4

1057

    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. Mistä puhuitte viimeksi kun näitte

      Kerro yksi aiheista
      Ikävä
      50
      3874
    2. Olenko saanut sinut koukkuun?

      Hyvä. Rakastan sua.
      Ikävä
      105
      3425
    3. ROTAT VALTAAVAT ALUEITA

      Asukkaat nyt loukkuja tekemään ja kiireellä, jätehuolto kuntoon, jätteet niille kuuluville paikoille, huomioikaa yrittäj
      Äänekoski
      34
      2811
    4. Miten minusta tuntuu että kaikki tietää sun tunteista mua kohtaan

      Paitsi suoraan minä itse, vai mitä hlvettiä täällä tapahtuu ja miksi ihmiset susta kyselee minulta 🤔❤️
      Ikävä
      26
      2478
    5. Sisäsiittosuus

      Tämän kevään ylioppilaista 90% oli sama sukunimi?
      Suomussalmi
      20
      1879
    6. Alavuden sairaala

      Säästääkö Alavuden sairaala sähkössä. Kävin Sunnuntaina vast. otolla. Odotushuone ja käytävä jolla lääkäri otti vastaan
      Ähtäri
      5
      1829
    7. Kerro todelliset motiivit

      kaivattuasi kohtaan?
      Ikävä
      185
      1766
    8. Se on hyvästi

      Toivottavasti ei tavata.
      Ikävä
      29
      1578
    9. Reuters: Ukraina on iskenyt Venäjän strategisia pommikoneita vastaan. Jopa 40 konetta vahingoittunut

      Ukrainan turvallisuuspalvelu SBU on iskenyt Venäjän strategisia pommikoneita vastaan, kertoo Reuters. Uutistoimiston läh
      NATO
      387
      1468
    10. Huomenta kulta

      En mä halunnut sulle ilkeillä,päinvastoin. Miks mä niin tekisin ku rakastan sua ❤️ mut anteeksi jos ilmaisin itseäni huo
      Ikävä
      9
      1248
    Aihe