#include<iostream>

#include<conio.h>

#include<time.h>

#include <fstream>

#include <windows.h> // Sleep 쓸라고

using namespace std;

#define LEFT 75// 좌측방향키

#define RIGHT 77// 우측방향키

#define UP 72// 위쪽방향키

#define DOWN 80// 아래방향키

#define ESC 27 // ESC 키

int main(){

// 퍼즐게임

// 1 ~ 20 숫자를 가진 4x5 의 퍼즐에 숫자 1을

// 제일 우측하단에서 시작해서 방향키를 입력하면 움직이고(getch())

// 움직인 방향의 숫자와 위치를 바꾸고 벽인 방향으로 입력 시

// 움직이지 않는다.

int push, y = 3, x = 4, temp; // 누를 키값을 저장할 변수, 1의 행값 y, 열값 x, 임시 저장 변수

int puzzle[4][5] = { {18,9,14,4,7}, 

{2,8,10,5,6}, 

{15,12,3,16,19}, 

{20,11,17,13,1} };

do

{

cout << "퍼즐 게임" << endl;

printf("┌────────┐\n");

for (int i = 0; i < 4; i++) {

printf("│ ");

for (int j = 0; j < 5; j++) {

printf("%2d ", puzzle[i][j]);

}

printf("│\n");

}

printf("└────────┘\n");

push = getch();

switch (push)

{

case LEFT: // 왼쪽

if (x > 0) { // 왼쪽에 숫자가 있는 경우만 실행

temp = puzzle[y][x];

puzzle[y][x] = puzzle[y][x - 1];

puzzle[y][x - 1] = temp;

x -= 1;

}

break;

case RIGHT: // 오른쪽

if (x < 4) { // 오른쪽에 숫자가 있는 경우만 실행

temp = puzzle[y][x];

puzzle[y][x] = puzzle[y][x + 1];

puzzle[y][x + 1] = temp;

x += 1;

}

break;

case UP: // 위쪽

if (y > 0) { // 위쪽에 숫자가 있는 경우만 실행

temp = puzzle[y][x];

puzzle[y][x] = puzzle[y - 1][x];

puzzle[y - 1][x] = temp;

y -= 1;

}

break;

case DOWN: // 아래쪽

if (y < 3) { // 아래쪽에 숫자가 있는 경우만 실행

temp = puzzle[y][x];

puzzle[y][x] = puzzle[y + 1][x];

puzzle[y + 1][x] = temp;

y += 1;

}

break;

case ESC: // ESC

break;

}

system("cls");

} while (push != ESC);


return 0;

}

// ㅡㅡ 실행 화면 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ


'SGA 스터디 > C++ 코딩' 카테고리의 다른 글

슬롯머신 게임  (0) 2015.08.11
타일맵 그리기  (0) 2015.08.05
채팅 대전액션  (0) 2015.08.04
야구 게임  (0) 2015.07.31
홀짝 게임  (0) 2015.07.30

#include<iostream>

#include<time.h>

using namespace std;

int main(){

// 기회 9번

// 컴퓨터가 중복되지 않는 랜덤 수(0~9)를 3개 뽑아서 첫번째가 0 이면 안됨

// 플레이어가 숫자 3개를 입력 하나도 맞지않으면 아웃

// 위치가 다르더라도 동일한 숫자가 나오면 볼

// 위치가 같다면 스트라이크

srand(time(NULL));

cout << "야구 게임 ~ 시작" << endl;

int baseball[3]; // 숫자를 받을 야구 배열

do{

baseball[0] = rand() % 10;

baseball[1] = rand() % 10;

baseball[2] = rand() % 10;

} while (baseball[0] == 0 || baseball[0] == baseball[1] || baseball[0] == baseball[2] || baseball[1] == baseball[2]);

cout << "? ? ?" << endl;

int ball1, ball2, ball3; // 3개의 숫자를 입력받을 변수

int strike, ball; // 스트라이크 갯수와 볼 갯수를 카운트 해줄 변수

int count = 0; // 9회 까지 운영 되며 이전에 맞출 경우 게임이 종료됨

do{

count++;

int s = 0, b = 0; // 갯수를 카운트 해주고

scanf("%d %d %d", &ball1, &ball2, &ball3);

if (baseball[0] == ball1) s += 1;

if (baseball[1] == ball2) s += 1;

if (baseball[2] == ball3) s += 1;

if (baseball[0] == ball2 || baseball[0] == ball3) b += 1;

if (baseball[1] == ball1 || baseball[1] == ball3) b += 1;

if (baseball[2] == ball1 || baseball[2] == ball2) b += 1;

strike = s;

ball = b;

cout << "스트라이크 " << strike << "\t볼 " << ball << endl;

} while (strike < 3 && count < 10);

if (strike == 3) cout << "3 스트라이크 아웃입니다. 승리하셨습니다." << endl;

else cout << "9회전 종료\t " << strike << " 스트라이크\t " << ball << " 볼을 달성하고 패배하셨습니다." << endl;

return 0;

}


'SGA 스터디 > C++ 코딩' 카테고리의 다른 글

슬롯머신 게임  (0) 2015.08.11
타일맵 그리기  (0) 2015.08.05
채팅 대전액션  (0) 2015.08.04
퍼즐 게임  (0) 2015.08.01
홀짝 게임  (0) 2015.07.30

#include<iostream>

#include<time.h>

using namespace std;

int main(){

// 과제 - 홀짝 게임

// 홀짝 게임

// 배팅금액

// 가진돈은 1000원

// 배팅액은 100원 이상

// 100원 이하면 게임 끝

// 컴터의 홀짝을 내가 홀짝을 선택하여( 0 이면 짝 1 이면 홀) 맞추는 게임

// 게임 횟수를 추가해도 좋다.


srand(time(NULL));


int money = 1000; // 보유 금액 1000원

int batting1, batting2; // 홀짝 변수, 배팅 금액을 정할 변수

int dealer;         // 딜러

int count = 0; // 게임 횟수 카운트할 변수


cout << "홀짝 게임" << endl;

while (money > 99 && count < 3){  // count 범위가 판 수

count++;     // 게임이 진행될 때마다 숫자 값이 증가


cout << "보유 금액 : " << money << endl;


do {

cout << "홀, 짝을 지정하세요 ( 0 : 홀 / 1 : 짝 ) : ";

cin >> batting1; // 홀, 짝 지정

} while (batting1 < 0 || batting1 > 1);


do {

cout << "배팅 금액을 지정하세요 ( 100원 이상 배팅하세요 / 보유 금액을 넘길 수 없습니다 ) : ";

cin >> batting2; // 배팅금액 지정

} while (batting2 < 100 || money < batting2);

money -= batting2; // 배팅한 금액만큼 보유 금액을 뺀다.


dealer = rand() % 2; // 0, 1 (홀, 짝) 을 뽑아낸다.

if (dealer == 0) {

cout << "홀 입니다" << endl;

}

else {

cout << "짝 입니다" << endl;

}

if (batting1 == dealer) {

money = money + ( batting2 * 2 ); // 성공시 금액의 두배를 환산

}

cout << "==============================================================================" << endl;


}

if (money < 100) {

cout << "보유 금액이 " << money << " 원 이므로 배팅을 할 수 없어 게임을 종료합니다." << endl;

}

else {

cout << "지정된 " << count << " 판 수가 종료되어 게임을 종료합니다." << endl;

cout << "최종 보유 금액 : " << money << " 원" << endl;

}


return 0;

}


ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

플레이 화면




'SGA 스터디 > C++ 코딩' 카테고리의 다른 글

슬롯머신 게임  (0) 2015.08.11
타일맵 그리기  (0) 2015.08.05
채팅 대전액션  (0) 2015.08.04
퍼즐 게임  (0) 2015.08.01
야구 게임  (0) 2015.07.31

+ Recent posts