~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 고 게 까? ..
*/