2013-06-13 84 views
0

C#連接四個控制檯應用程序C#連接四臺

我目前編程連接四場爲一所學校分配的控制檯應用程序。

我的老師目前沒有做數據庫管理,我們的替代老師沒有太大的幫助。

由於我對編程非常陌生,我不知道如何編寫一個函數,將一個'光盤'從第一行,第二行,第三行等放入數組中,直到它觸及底部,停止。

我知道延遲'thread.sleep()'作爲零(光盤)向下移動陣列,我希望能夠融入到函數中。

對於計算機我是絕對的noob,我沒有被教導足夠完成任務。這是最後的手段。任何人都可以在27小時內幫助我嗎?謝謝。

目前,我有我的主要功能驗證碼:

using System.Collections.Generic; 
    using System.Linq; 
    using System.Text; 
    using System.Threading; // Allows for the delay object 

    namespace ConnectFour 
    { 
     class Program 
     { 
      static void Main(string[] args) 
      { 
       introduction(); 
       int[,] slotBoard = new int[7, 7]; // Initialises array 
       Console.ForegroundColor = ConsoleColor.Yellow; 
       Console.WriteLine("\n\n\t\t\t\t 1 2 3 4 5 6 7\n"); 
       Console.ForegroundColor = ConsoleColor.White; 
       string tabbing = "\t\t\t\t "; 
       for (int i = 0; i < 7; i++) 
       { 
        Console.Write(tabbing); 
        for (int n = 0; n < 7; n++) 
        { 
         Console.Write(slotBoard[i, n]); // Displays array 
         Console.Write(" "); 
        } 
        Console.WriteLine(); 
       } 
       Console.ForegroundColor = ConsoleColor.Cyan; 
       Console.Write("\n\n\t\t Where would you like to place your disc? "); 
       Console.ForegroundColor = ConsoleColor.White; 
       insertDisc(); 
       Console.ReadLine(); 
      } 
+1

如果我是你,我會把'//顯示數組'放到它自己的方法中,所以每次更新數組時,都可以調用該方法來顯示它。 – Nolonar

+0

是0的板頂部還是底部? (我認爲頂部) – Sayse

+0

我可以看到你的insertDic()方法嗎? – CodeCamper

回答

1

真的它變得相當複雜。因爲它是連接4,所以您可以更容易地添加每行中有多少部分,但是您還必須跟蹤哪個團隊是現場的。我能爲你做的最好的事情就是爲你提供一個想法,你可以放置一些片段。

事情你必須做

1)跟蹤團隊(你可能必須做出只爲球隊另一個陣列)

2)計算的贏家(這將是一個痛苦)

3)製作動畫使用睡眠(給你一個例子)

下面的代碼演示了你如何放置件下來。您應該能夠將我的混亂縮成幾行代碼並添加所需的附加功能。

 int[,] slotBoard = new int[7,7]; 
     Console.SetCursorPosition(0, 0); 
     Console.ForegroundColor = ConsoleColor.Yellow; 
     Console.WriteLine("\n\n\t\t\t\t 1 2 3 4 5 6 7\n"); 
     Console.ForegroundColor = ConsoleColor.White; 
     string tabbing = "\t\t\t\t "; 
     for (int r = 0; r < 7; r++) 
     { 
      System.Threading.Thread.Sleep(100); 
      Console.Write(tabbing); 
      for (int c = 0; c < 7; c++) 
      { 
       Console.Write(0); 
       Console.Write(" "); 
      } 
      Console.WriteLine(); 
     } 
     Console.ForegroundColor = ConsoleColor.Cyan; 
     Console.Write("\n\n\t\t Where would you like to place your disc? "); 
     Console.ForegroundColor = ConsoleColor.White; 
     again: 
     switch (Console.ReadKey(true).KeyChar.ToString()) 
     { 
      case "1": 
       Console.Write("1"); 
       if (slotBoard[0, 0] < 7) slotBoard[0, 0]++; 
       Console.SetCursorPosition(33, 11 - slotBoard[0, 0]); 
       Console.Write("1"); 
       Console.SetCursorPosition(60, 13); 
       goto again; 
      case "2": 
       Console.Write("2"); 
       if (slotBoard[1, 0] < 7) slotBoard[1, 0]++; 
       Console.SetCursorPosition(35, 11 - slotBoard[1, 0]); 
       Console.Write("1"); 
       Console.SetCursorPosition(60, 13); 
       goto again; 
      case "3": 
       Console.Write("3"); 
       if (slotBoard[2, 0] < 7) slotBoard[2, 0]++; 
       Console.SetCursorPosition(37, 11 - slotBoard[2, 0]); 
       Console.Write("1"); 
       Console.SetCursorPosition(60, 13); 
       goto again; 
      case "4": 
       Console.Write("4"); 
       if (slotBoard[3, 0] < 7) slotBoard[3, 0]++; 
       Console.SetCursorPosition(39, 11 - slotBoard[3, 0]); 
       Console.Write("1"); 
       Console.SetCursorPosition(60, 13); 
       goto again; 
      case "5": 
       Console.Write("5"); 
       if (slotBoard[4, 0] < 7) slotBoard[4, 0]++; 
       Console.SetCursorPosition(41, 11 - slotBoard[4, 0]); 
       Console.Write("1"); 
       Console.SetCursorPosition(60, 13); 
       goto again; 
      case "6": 
       Console.Write("6"); 
       if (slotBoard[5, 0] < 7) slotBoard[5, 0]++; 
       Console.SetCursorPosition(43, 11 - slotBoard[5, 0]); 
       Console.Write("1"); 
       Console.SetCursorPosition(60, 13); 
       goto again; 
      case "7": 
       Console.Write("7"); 
       if (slotBoard[6, 0] < 7) slotBoard[6, 0]++; 
       Console.SetCursorPosition(45, 11 - slotBoard[6, 0]); 
       Console.Write("1"); 
       Console.SetCursorPosition(60, 13); 
       goto again; 
      default: 
       goto again; 
     }