해결된 질문
20.12.26 20:31 작성
·
167
0
질문 내용
우선 테두리가 빨갛게 나오도록 하는 건 문제가 없었습니다. 거기서 조금 x,y 에 대한 확인을 해보고 싶어서 [3,4] 지점의 녹색 점을 빨갛게 출력해보고 싶기 위해 코드를 수정했습니다.
그런데 해당 위치 점이 빨갛게 나오도록 하는 건 성공했는데 문제는 해당 빨강점 이후에 한 줄을 띄고 점을 찍는 현상이 발생했습니다. 이와 관련된 이유가 궁금해 질문남깁니다.
+추가 질문
_tile[x,y] 가 아니라 _tile[y,x]로 하는 이유가 있을까요?
작성 코드
public void Rander()
{
ConsoleColor prevColor = Console.ForegroundColor;
for (int x = 0; x < _size; x++)
{
for (int y = 0; y < _size; y++)
{
if (x == 3 && y == 4)
{
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine(CIRCLE);
}
else
{
Console.ForegroundColor = GetTileColoer(_tile[x, y]);
Console.Write(CIRCLE);
}
}
Console.WriteLine();
}
Console.ForegroundColor = prevColor;
}
답변 1
0
2020. 12. 26. 20:36
Console.WriteLine은 출력 후 한줄을 개행하는 기능이고
그냥 원하는 것만 출력하시려면 Console.Write << 으로 하셔야 합니다.
y,x나 x, y나 똑같으니 원하는 순서대로 하시면 됩니다.
전 C++에서 arr[y][x]로 하던 습관 때문에 y,x가 더 편해서 그렇게 한겁니다.