내일배움캠프 강의를 들어놓고 남겨두었던 과제를 했는데
틱택토 게임 만들기를 했다. 하면서 헷갈렸던 것들을 적어본다.
이런식으로 4개의 메서드를 사용해서 틱택토 게임을 만들어 보았다.
하는중 이런저런 난관이 조금씩 있었지만 제일 어려웠던건 중복자리에 대한 예외처리였다.
배열을 숫자로 해서 1,2,3,4,5,6,7,8,9를 2차원 배열로 할당해 주었고
for 문으로 돌면서 하나씩 확인해서 내가 입력한 숫자 자리에 해당 플레이어의 표식이 남게 두었다.
그러나 문제가 생겼는데 중복자리에 "놓을수 없습니다." 이런 문구를 적는데 for문으로 하다보니 입력하는 if문을 넘어가도 다시 for문으로 검사를 하니까 예외처리로 빠져서 계속해서 "놓을 수 없습니다." 라는 문구를 뱉었다.
이걸 어떻게 할까 계속해서 생각하다가 차라리 입력한 숫자를 다른 새로운 배열에 넣고 다음에 다시 입력한 값이 그 배열에 값들이랑 같은지 검사를 해서 같다면 아래 Playing함수를 실행하지 않고 바로 return으로 빠져나오는 방식으로 했는데 이렇게 하니까 해결되었다.
위처럼 예외처리를 했다. 뿌듯!
그리고 하던 중에 Playing에 return하고 싶은 변수가 2개가 있었는데 어떻게 해야할지 몰라서 검색을 해보니
튜플(Tuple) 기능이란게 있었다.
사용 방법은
return 타입에 (int,int) 이렇게 적으면 return이 2개 가능하다. 그리고 return 변수1, 변수2; 이렇게 적고
리턴 한 값을 호출하는 방법은
(int,int) num = 함수이름
Num.item1; 하면 변수1 을
Num.item2; 하면 변수2를 가져온다.
이런식으로 사용해서 리턴값을 2개를 가져와서 사용했다.
'개발 TIL' 카테고리의 다른 글
내일배움캠프 8일차 TIL 개인과제 TextRPG (0) | 2025.02.03 |
---|---|
내일배움캠프 7일차 TIL 학습한내용 정리 (0) | 2025.01.31 |
내일배움캠프 6일차 TIL C#배운내용 및 Tip (0) | 2025.01.27 |
내일배움캠프 5일차 TIL 오늘 학습한 C#내용정리 (0) | 2025.01.24 |
내일배움캠프 4일차 TIL C# 나만의 용어정리 (1) | 2025.01.23 |