나는 프로그래밍하는 방법을 배우고, 주로 웹을하기 전에 다른 언어를 사용했지만 C#은 나를 위해 이해하기가 약간 어렵다. msdn 사이트는 너무 복잡하거나 돈이 없다. 올바르게 사용하는 것을 알고 있습니다. 나는이 방법으로 두 가지 차원 배열을 표시 할 때, 내가 문제로 실행을 스도쿠 퍼즐을 해결 프로그램을 구축하는 노력이 오류가 점점 : 당신은 DisplayBoard
방법의 매개 변수에 이름을 부여하지 않았다방법 2 차원 배열을 표시
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
int[,] board = new int[9, 9] {{7, 2, 5, 8, 0, 4, 9, 1, 3},
{0, 0, 0, 0, 3, 0, 0, 0, 4},
{0, 0, 0, 0, 0, 1, 8, 2, 6},
{0, 0, 9, 0, 0, 0, 0, 0, 7},
{0, 1, 0, 6, 2, 8, 0, 4, 0},
{2, 0, 0, 0, 0, 0, 5, 0, 0},
{3, 6, 8, 4, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 7, 0, 0, 0, 8},
{0, 0, 0, 0, 0, 2, 6, 9, 5}};
DisplayBoard(board);
List<int> missing = new List<int>();
List<int> present = new List<int>();
int temp = 0;
for (int i = 0; i < 1; i++)
{
for (int j = 0; j < 9; j++)
{
//Console.Write(board[i, j]);
if (board[i, j] == 0)
{
missing.Add(j);
}
else
{
present.Add(board[i, j]);
}
if (present.Count == 8)
{
for (int x = 0; x < present.Count; x++)
{
if (!present.Contains(x))
{
temp = x;
}
}
board[i, missing[0]] = temp;
}
}
//missing.ForEach(Console.WriteLine);
}
DisplayBoard(board);
}
static void DisplayBoard(int[,])
{
for (int i = 0; i < 1; i++)
{
for (int j = 0; j < 9; j++)
{
Console.Write(board[i, j]);
}
}
}
}
무엇을 오류? – Guy
for (int i = 0; i <1; i ++)의 for 루프의 목적은 무엇입니까? 지금은 전혀 쓸모가 없습니다. 너 내가 여기서 9 살 이하인지 확인해야 겠어. –
@ SergeyBerezovskiy 필자는 i <9가되어야하지만 테스트하는 동안 첫 번째 줄로 만 시도합니다. – fakerismyguru