본문 바로가기
  • 행복은 내게서 오는 것!
프로그래밍/C

C언어 쓰레드 활용

by ㅍ우주 2022. 4. 12.

강아지(30), 사자(50), 고양이(40), 호랑이(20)

입력시 생존력 상승+1
3초 지날수록 생존력 -1

 

#include <stdio.h>
#include <windows.h>
#include <process.h>


int stage = 1;
int dog = 1, lion = 50, cat = 40, tiger = 20;
int animal;
int cool_time = 3000;

unsigned _stdcall Thread_A(void* arg) {
    while (1) {
        printf("\n=======동물들의 HP=======\n");
        printf("강아지 HP : %d\n", dog);
        printf("사자 HP : %d\n", lion);
        printf("고양이 HP : %d\n", cat);
        printf("호랑이 HP : %d\n", tiger);
        printf("=========================\n");
        Sleep(cool_time);
        if (dog > 0)
            dog--;
        if (lion> 0)
            lion--;
        if (cat>0)
            cat--;
        if (tiger >0)
            tiger--;
        

       
    }

    
}

unsigned _stdcall Stage(void* arg) {


    Sleep(10000);
    printf("\n==================================\n");
    printf("\n=============STAGE 1==============\n");
    printf("\n==================================\n");
    cool_time = 3000;

    Sleep(10000);
    printf("\n==================================\n");
    printf("\n=============STAGE 2==============\n");
    printf("\n==================================\n");
    cool_time = 2500;

    Sleep(10000);
    printf("\n==================================\n");
    printf("\n=============STAGE 3==============\n");
    printf("\n==================================\n");
    cool_time = 2000;

    Sleep(10000);
    printf("\n==================================\n");
    printf("\n=============STAGE 4==============\n");
    printf("\n==================================\n");
    cool_time = 1500;

    Sleep(10000);
    printf("\n==================================\n");
    printf("\n=============STAGE 5==============\n");
    printf("\n==================================\n");
    cool_time = 1000;
}

int main(void) {

    _beginthreadex(NULL, 0, Thread_A, 0, 0, NULL);
    Sleep(10);

    while (1) {
        printf("생존력을 높이고 싶은 동물을 입력하시오 (dog : 1, lion : 2, cat : 3, tiger : 4) : ");
        scanf_s("%d", &animal, sizeof(animal));

        if (animal == 1) {
            if (dog > 0) {
                dog++;
                printf("\n---------------------------------------------------------------\n");
                printf("강아지의 hp가 1 증가하였습니다.\n 강아지의 hp : %d", dog);
                printf("\n---------------------------------------------------------------\n");
            }
            else  {
                printf("\n=============사망=============\n");
                printf("\n강아지가 사망하였습니다.\n");
                printf("\n==============================\n");
            }
        }

        else if (animal == 2) {
            if (tiger > 0) {
                tiger++;
                printf("\n---------------------------------------------------------------\n");
                printf("호랑이의 hp가 1 증가하였습니다.\n 강아지의 hp : % d", tiger);
                printf("\n---------------------------------------------------------------\n");
            }

            else {
                printf("\n=============사망=============\n");
                printf("\n호랑이가 사망하였습니다.\n");
                printf("\n==============================\n");
            }
        }

        else if (animal == 3) {
            if (cat > 0) {
                cat++;
                printf("\n---------------------------------------------------------------\n");
                printf("고양이의 hp가 1 증가하였습니다.\n 고양이의 hp : %d", cat);
                printf("\n---------------------------------------------------------------\n");
            }
            else {
                printf("\n=============사망=============\n");
                printf("\n고양이가 사망하였습니다.\n");
                printf("\n==============================\n");
            }
        }

        else if (animal == 4) {
            if (lion > 0) {
                lion++;
                printf("\n---------------------------------------------------------------\n");
                printf("사자의 hp가 1 증가하였습니다.\n 사자의 hp : %d", lion);
                printf("\n---------------------------------------------------------------\n");
            }
           
            else {
                printf("\n=============사망=============\n");
                printf("\n사자가 사망하였습니다.\n");
                printf("\n==============================\n");
            }
        }
    }

       


}