회원 로그인
정보기억 정보기억에 체크할 경우 다음접속시 아이디와 패스워드를 입력하지 않으셔도 됩니다.
그러나, 개인PC가 아닐 경우 타인이 로그인할 수 있습니다.
PC를 여러사람이 사용하는 공공장소에서는 체크하지 마세요.
소셜네트워크 서비스를 통해서 로그인하시면 별도의 로그인 절차없이 회원서비스를 이용하실 수 있습니다.


최근 게시물

1.노션에서 작성 중

1.노션에서 작성 중

개편하기 전까지 노션에서 작성 중

2024.04.04//read more

2.ChatGPT

2.ChatGPT

OpenAI로 대규모 언어 모델대화형...

2023.03.16//read more

3.노코딩 게임 엔진 - 빌..

3.노코딩 게임 엔진 - 빌..

빌드 지원안드로이드iOS윈도우즈특이사...

2023.03.14//read more

4.(완료) 미접속 회원 정..

4.(완료) 미접속 회원 정..

[완료] 36명의 회원을 정리하였습니...

2023.02.16//read more

5.매뉴얼 플러스 - 전자제..



안정적인 DNS 서비스 DNSEver
DNS Powered by DNSEver.com


가위바위보 게임 3 (함수 사용)

푸딩뱃살 | 2015.11.02 13:45 | 조회 3166
가위바위보 게임 3

[결과]
P1:? vs P2:? >> P2 승리
P1:? vs P2:? >> P1 승리
...
=======
가위바위보 게임 횟수 : ?
P1 승리 : ? VS P2 승리 : ?
최종 승리자 : P1
=======

누가 3번 이겼을 경우 게임 종료
#include <iostream> // cin, cout
#include <string> // string
#include <stdio.h> // rand()
#include <time.h> // time()
#include <Windows.h> // Sleep()

/* 상수(전처리)
#define KAWE 0
#define BAWE 1
#define BO 2
*/

using namespace std;

const int KAWE = 0;
const int BAWE = 1;
const int BO = 2;
string type_;


string printKKB(int kbb){
    // switch문
    switch (kbb) {
    case KAWE:
        // cout << "가위";
        return type_ = "가위";
        break;
    case BAWE:
        return type_ = "바위";
        //cout << "가위";
        break;
    default:
        return type_ = "보";
        //return "보";
        break;
    }

    /* if문
    if (kbb == KAWE) {
    cout << "가위";
    }
    else if (kbb == BAWE) {
    cout << "바위";
    }
    else if (kbb == BO) {
    cout << "보";
    }
    */
}

void main1() {
    // 렌덤값 추출
    srand((unsigned int)time(NULL));

    // 승리
    int pc1WinNum = 0;
    int pc2WinNum = 0;
    // 게임횟수
    int gameNum = 0;
    // 가위바위보 표기
    string pc1game;
    string pc2game;

    while (true){
        int pc1Rand = rand() % 3 + 1;
        int pc2Rand = rand() % 3 + 1;

        // 함수 호출
        pc1game = printKKB(pc1Rand);
        pc2game = printKKB(pc2Rand);

        // 판정
        // P2 승리
        if ((pc1Rand == 1) && (pc2Rand == 2) || (pc1Rand == 2) && (pc2Rand == 3) || (pc1Rand == 3) && (pc2Rand == 1)) {
            pc2WinNum++;
            cout << "P1:" << pc1game << " vs P2:" << pc2game << " >>> P2 승리" << endl;
        }
        // P1 승리
        else if ((pc1Rand == 2) && (pc2Rand == 1) || (pc1Rand == 3) && (pc2Rand == 2) || (pc1Rand == 1) && (pc2Rand == 3)) {
            pc1WinNum++;
            cout << "P1:" << pc1game << " vs P2:" << pc2game << " >>> P1 승리" << endl;
        }
        // 무승부
        else {
            cout << "P1:" << pc1game << " vs P2:" << pc2game << " >>> 무승부" << endl;
        }

        gameNum++;

        if (pc1WinNum == 3 || pc2WinNum == 3){
            break;
        }

        //Sleep(2000)
    }

    cout << endl;

    cout << "가위바위보 게임 횟수 : " << gameNum << endl;
    cout << "P1 승리 : " << pc1WinNum << " VS " << "P2 승리 : " << pc2WinNum << endl;

    if (pc1WinNum > pc2WinNum) {
        cout << "최종 승리자 : P1" << endl;
    }
    else {
        cout << "최종 승리자 : P2" << endl;
    }
}
285개(8/15페이지)
프로그래밍
번호 제목 글쓴이 조회 날짜
145 [C/C++] 배열 푸딩뱃살 2003 2015.11.03 09:58
144 [C/C++] 클래스 푸딩뱃살 2376 2015.11.03 09:58
143 [C/C++] 함수 사용 팁 푸딩뱃살 1957 2015.11.03 09:54
>> [C/C++] 가위바위보 게임 3 (함수 사용) 푸딩뱃살 3167 2015.11.02 13:45
141 [C/C++] 함수 푸딩뱃살 1803 2015.11.02 13:44
140 [C/C++] 2차원(2중) for문 푸딩뱃살 1957 2015.10.30 17:59
139 [C/C++] 상수 푸딩뱃살 1402 2015.10.30 17:58
138 [C/C++] 가위바위보 게임 2 푸딩뱃살 1644 2015.10.30 17:32
137 [C/C++] continue문 푸딩뱃살 1531 2015.10.30 16:01
136 [C/C++] break문 푸딩뱃살 1666 2015.10.30 15:43
135 [C/C++] 반복문 while와 for 비교 푸딩뱃살 2487 2015.10.30 15:42
134 [C/C++] 반복문 for 푸딩뱃살 1820 2015.10.30 14:16
133 [C/C++] 반복문 while 푸딩뱃살 2254 2015.10.30 14:13
132 [C/C++] 반복문 하기 전 스크립트 푸딩뱃살 1971 2015.10.30 14:10
131 [C/C++] 조건문 switch 푸딩뱃살 2070 2015.10.30 10:56
130 [C/C++] 가위바위보 게임 푸딩뱃살 1743 2015.10.29 17:30
129 [C/C++] 조건문 if ~ else 푸딩뱃살 1966 2015.10.29 15:08
128 [C/C++] 형 변환 푸딩뱃살 1649 2015.10.29 12:02
127 [C/C++] 대입 연산자 푸딩뱃살 1562 2015.10.29 12:00
126 [C/C++] 증가감 연산자 푸딩뱃살 1573 2015.10.29 11:57