C++/보드게임 구현(6)
-
[C++] 빙고 게임 코드 재구성 (2024_03_01)
전 페이지에서 이야기한 것처럼 코드 작성을 연습위해 과거에 작성한 보드 게임을 재작성하였다. 리팩토링이라고 이야기하지 않은 이유는 코드의 가독성을 높이기 위해 고치는 도중, 결과 값을 비롯하여 다수의 변수와 함수 이름, 내부 구조가 변경되었기 때문이다. 규칙은 이전과 동일하다. [규칙] 1. 5 x 5 크기의 게임 보드 2. 숫자 범위 : 1~25 3. 컴퓨터 VS 플레이어 형식으로 각각 게임 보드를 소유하고 있다. 3. 게임 시작 시 게임 보드의 숫자는 무작위로 섞여 플레이어와 컴퓨터의 숫자 순서가 다름. 4. 원하는 숫자를 입력하면 특수 기호(#)이 출력되도록 설정 5. 특수 기호(#)가 같은 줄을 이루면 빙고! 빙고 조건 : 가로, 세로, 대각선 승리 조건 : 컴퓨터보다 먼저 3 빙고를 먼저 달성...
2024.03.01 -
[C++] 빙고 게임 구현 (2024_02_28)
2일전에 작성한 코드이지만 쉬는 날을 맞이하여 복습할 겸 코드를 다시 재작성하는 시간을 가졌다. 그러나 과거의 내가 어떤 형식으로 작성했는지를 보여주지 않은 것을 깨달아 지금이라도 올린다. 다음 페이지에 해당 코드를 어떤 식으로 재구성하였는지 보여주도록 하겠다. 게임의 규칙은 아래와 같다. [규칙] 1. 5 x 5 크기의 게임 보드 2. 숫자 범위 : 1~25 3. 컴퓨터 VS 플레이어 형식으로 각각 게임 보드를 소유하고 있다. 3. 게임 시작 시 게임 보드의 숫자는 무작위로 섞여 플레이어와 컴퓨터의 숫자 순서가 다름. 4. 원하는 숫자를 입력하면 특수 기호(#)이 출력되도록 설정 5. 특수 기호(#)가 같은 줄을 이루면 빙고! 빙고 조건 : 가로, 세로, 대각선 승리 조건 : 컴퓨터보다 먼저 3 빙고를..
2024.03.01 -
[C++] 트럼프 카드 리팩토링
전에 작성한 트럼프 카드를 이번에 새롭게 공부한 구조체와 포인터 변수를 이용하여 보수 및 정리하였다. 확실히 수많은 프로그래머 희망자들을 좌절하게 만든 포인터 변수답게 너무나도 심오하여 보수 및 정리만 하는 것임에도 직접 코드를 작성하는 것보다 더욱 많은 시간을 소모하였다. 덕분에 계속 공부를 해야겠다는 마음을 다잡도록 만들었다. 소요 시간 : 5시간 규칙은 이전과 같다. [규칙] 1. 총 52장의 트럼프 카드 2. 카드의 종류 : 스페이드, 클로버, 하트, 다이아 3. 카드의 숫자 범위 : 1~13 카드 표시법 1 : A 11 : J 12 : Q 13 : K 승리 조건 : 임의의 카드 2장 사이의 숫자 카드를 제출 패배 조건 : 범위를 벗어나거나 같은 숫자의 카드를 제출하면 패배 추가 조건 1 : 한번..
2024.02.27 -
[C++] 섯다 코딩 리팩토링
24일에 작성한 섯다 코드를 다시 리팩토링하였다. 다시 검사해보니 많은 오류가 있었고 오류를 고치는 김에 조금 더 가독성이 좋아지도록 구조체와 함수를 이용하여 보수 및 정리하였다. 규칙은 이전과 같다. 1. 총 20장의 카드가 존재한다. 2. 카드의 숫자 범위는 1~10까지로 각 2장씩 존재한다. 3. 플레이를 하는 사람의 수는 사용자가 직접 입력하여 결정한다. 4. 사용자는 어떤 플레이어가 승리할지 예측하여 입력한다. 5. 사용자가 예측에 실패하였을 경우 다시 처음부터 루프 한다. 6. 사용자가 예측에 성공하면 승리라는 문구가 나타나고 루프가 종료된다. 더보기 /* 섯다. 규칙 1. 총 20장의 카드가 존재한다. 2. 카드의 숫자 범위는 1~10까지로 각 2장씩 존재한다. 3. 플레이를 하는 사람의 수..
2024.02.27 -
[C++] 트럼프 카드 게임 구현
지난번에 작성한 섯다와 유사한 난이도와 조건이었으나 제작 소요 시간이 확연하게 줄어든 것을 보아 저번의 연습이 나의 실력을 한단계 올려준 것 같다. 소요 시간 : 2시간 30분 게임 : 임의로 지정된 카드의 사이 숫자 맞추기 [규칙] 1. 총 52장의 트럼프 카드 2. 카드의 종류 : 스페이드, 클로버, 하트, 다이아 3. 카드의 숫자 범위 : 1~13 카드 표시법 1 : A 11 : J 12 : Q 13 : K 승리 조건 : 임의의 카드 2장 사이의 숫자 카드를 제출 패배 조건 : 범위를 벗어나거나 같은 숫자의 카드를 제출하면 패배 추가 조건 1 : 한번 등장한 카드는 다음 게임에 등장하지 않음 추가 조건 2 : 플레이어가 승리하면 베팅 금액의 2배를 얻고 패배하면 2배를 잃는다. 종료 조건 1 : 모..
2024.02.26 -
[C++] 섯다 텍스트 게임 구현
c++의 숙달을 위하여 섰다 게임을 제작했다. 지금까지 배운 반복문과 조건문, 배열 등과 같이 기초적인 명령문을 이용하여 제작하였다. 소요 시간 : 대략 8시간 해당 게임을 제작하기 위해서 넣은 규칙은 대략 아래와 같다. [규칙] 1. 총 20장의 카드가 존재한다. 2. 카드의 숫자 범위는 1~10까지로 각 2장씩 존재한다. 3. 플레이를 하는 사람의 수는 사용자가 직접 입력하여 결정한다. 4. 사용자는 어떤 플레이어가 승리할지 예측하여 입력한다. 5. 사용자가 예측에 실패하였을 경우 다시 처음부터 루프 한다. 6. 사용자가 예측에 성공하면 승리라는 문구가 나타나고 루프가 종료된다. 더보기 #include int main() { srand(time(NULL));//난수 초기화 int playerCount..
2024.02.24