<style type="text/css"> p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #e47c48; background-color: #000000} p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #ff2c38; background-color: #000000} p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #ffffff; background-color: #000000; min-height: 13.0px} p.p4 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #ffffff; background-color: #000000} p.p5 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #23ff83; background-color: #000000} p.p6 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #41cc45; background-color: #000000} p.p7 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #d31895; background-color: #000000} span.s1 {color: #ff2c38} span.s2 {color: #e47c48} span.s3 {color: #786dff} span.s4 {color: #41cc45} span.s5 {color: #d31895} span.s6 {color: #ffffff} span.s7 {color: #00a0ff} span.s8 {color: #23ff83} </style>


#include

#include

#include

#define trycount 10 //입력할 숫자의 개수

#define numberRange 30 //추첨될 숫자의 범위 + 1


int randNum;

int correctSeed;

int correctScore,fairCount;

int dummyNum;

int userAns;

int comp_num[trycount];

int user_num[trycount];


void num_set(void);

void num_set_user(void);

void repeat_program(void);

void execute_array(void);


int main(void) {

    

    repeat_program();

    

    return 0;

}





//-------------------------------------------------


void repeat_program(void){

    srand((unsigned)time(NULL));

    

    num_set_user();

    num_set();

    

    puts("");

    

    printf("-=당신의 숫자=-\n");

    for(int p = 0 ; p < trycount ; p++){

        if (p != (trycount-1)){

            printf("%d-",user_num[p]);

        }

        else{

            printf("%d\n",user_num[p]);

        }

    }

    

    puts("");

    

    printf("-=추첨된 숫자=-\n");

    for(int u = 0 ; u < trycount ; u++){

        if (u != (trycount-1)){

            printf("%d-",comp_num[u]);

        }

        else{

            printf("%d\n",comp_num[u]);

        }

    }

    

    for(int j = 0 ; j < trycount ; j++){ //번호 확인

        for(int k = 0 ; k < trycount ; k++){

            if (user_num[j] == comp_num[k]){

                correctScore += 1;

            }

        }

    }

    

    

    puts("");

    

    for (int q = 0 ; q < trycount ; q++){

        if(comp_num[q] == user_num[q]){

            fairCount += 1;

        }

        else{

            continue;

        }

    }

    

    printf("당신이 맞춘 숫자의 개수는 %d개 입니다.\n",correctScore);

    printf("그 중 순서까지 맞춘 숫자의 개수는 %d개 입니다.\n",fairCount);

    printf("총점은 %d점 입니다.\n",correctScore + fairCount*2);

    printf("--숫자를 맞췄을 경우 1점, 순서까지 맞췄을 경우 대신 3점--\n");

    

    

    puts("");

    

    printf("다시 하시려면 1을, 종료하시려면 다른 아무키나 입력하세요:");

    scanf("%d",&userAns);

    if(userAns == 1){

        printf("다시 시작합니다.\n");

        puts("");

        execute_array();

        repeat_program();

    }

    else{

        printf("프로그램을 종료합니다.\n");

        puts("");

    }

    

}


void num_set(void){

    for(int i = 0 ; i < trycount ; i++ ){ //번호 추첨 중복 비허용

        randNum = rand()%numberRange;

        for(int b = 0 ; b < trycount ; b++ ){

            if (comp_num[b] == randNum){

                correctSeed += 1;

            }

        }

        if (correctSeed != 0){

            i--;

            correctSeed = 0;

            continue;

        }

        else{

            comp_num[i] = randNum;

        }

        

        

        

    }

    

}


void num_set_user(void){

    for (int k = 0 ; k < trycount ; k++){ //유저 입력 중복 비허용

        printf("%d번째 숫자를 입력하시오 : ",k+1);

        scanf("%d",&dummyNum);

        for (int m = 0 ; m < trycount ; m++){

            if (user_num[m] == dummyNum){

                correctSeed += 1;

            }

        }

        if (dummyNum >= numberRange || dummyNum == 0){

            k--;

            correctSeed = 0;

            printf("번호가 범위를 벗어났습니다.(1~%d)\n",numberRange-1);

            continue;

        }

        else if (correctSeed != 0){

            k--;

            correctSeed = 0;

            printf("중복된 번호가 존재합니다.\n");

            continue;

        }

        

        else{

            user_num[k] = dummyNum;

        }

        

    }

}


void execute_array(void){

    for(int d = 0 ; d < trycount ; d++){

        comp_num[d] = 0;

        user_num[d] = 0;

    }

    correctScore = 0;

    fairCount = 0;

}

빡대가리라못하겟어