~cpp #include <stdio.h> #include <stdlib.h> #include <time.h> #include <conio.h> void make_number(char *p); /* */ void check_num(char *dest, char *src); /* */ void main() { char hidden_num[3] = {'\0',}; char number_log[10][4] = {'\0',}; int i; char num[3]; clrscr(); // make hidden_number; make_number(hidden_num); for (i=0; i<10; i++) { printf("%d input number : ", i+1); scanf("%s", &num); if (num[0] == num[1] || num[0] == num[2] || num[1] == num[2]) { printf(" . .\n"); i--; } else strncpy(number_log[i], num, 3); //printf("%d : %s\n", i, number_log[i]); check_num(number_log[i], hidden_num); } printf("You lose~\nThe answer is %c%c%c", hidden_num[0], hidden_num[1], hidden_num[2]); } void make_number(char *p) { int number[3]; int i, temp_i, num, j; randomize(); printf("Make number..\n"); for(i=0; i<3; i++) { temp_i=i; num = rand() % 10; if (i<1) number[i] = num; else for (j=0; j<temp_i; j++) if (number[j]==num) i--; else number[i] = num; p[i] = (char) number[i] + 48; } //printf("%c %c %c \n", p[0], p[1], p[2]); //printf("%d %d %d \n", number[0], number[1], number[2]); } void check_num(char *dest_num, char *src_num) { int i, j, k; int strike = 0; int ball = 0; for (i=0; i<3 ;i++ ) { for (j=0; j<3 ;j++ ) { if (dest_num[i] == src_num[j]) if (i == j) strike++; else ball++; } } if (strike == 3) { printf("You win~!!\n"); exit(-1); } else if (strike == 0 && ball == 0) printf("out!!\n"); else printf("%dstrike %dball\n", strike, ball); } /* 거 ZeroWiki 고 --v .. 근 까 .. 겠~ editplus 꽤 .. 경 ~ 근 거 .. ? --a ex) 223 고 게 까? .. */