다시 태어난 뉴우~숫자야구!!! {{{~cpp #include #include using namespace std; void ballcount(); void strcount(); void manual(); void selection(); void game(); void loading(); void judgment(); int strike, ball, select, count; int main() { selection(); judgment(); cout << endl << "제작: 강희경 두둥~!!" << endl; loading(); return 0; } void ballcount() { if(ball == 3) cout << "쓰리 볼~ " <> select ) { cout << "---------------------------------------------------" << endl; game(); } else { cout << "잘못 입력하셨습니다." << endl; } } void game() { switch(select) { case 1 : manual(); break; case 2 : count = 1; do{ srand(time(0)); int num = rand() % 899 + 100; int num_m[3]; num_m[0] = num % 10; num_m[1] = (num/10) % 10; num_m[2] = num/100; if(num_m[0] != num_m[1] && num_m[0] != num_m[2] && num_m[1] != num_m[2]) { cout << "컴퓨터가 숫자를 고르고 있습니다." << endl; loading(); do { cout << endl << "메뉴로 돌아가시려면" <<" 아무 글자키나 누르세요"; cout << endl << count << "번째 시도☞ " << "답을 맞춰 BOA요: ___\b\b\b"; int answer; if(cin >> answer) { if((answer >100) && (answer < 1000)) { int ans_m[3]; ans_m[0] = answer % 10; ans_m[1] = (answer/10) % 10; ans_m[2] = answer/100; strike = 0; ball = 0; for(int i = 0; i<3; i++) { for(int j = 0; j<3; j++) { if(ans_m[i] == num_m[j]) { if(i==j) { strike++; } else ball++; } } } count++; cout << endl; strcount(); ballcount(); if(strike == 0 && ball == 0) cout << "아 웃"< 5 && count <= 11) { cout << count-1 << "번만에 맞췄습니다." << endl; cout << "참 잘했어요~" << endl; } else if(count > 11) { cout << count-1 << "번만에 맞췄습니다." << endl; cout << "초딩!! 즐~" << endl; } } }}} ---- 이 코드를 다시한번 [리팩토링]하여 보세요. 프로그램을 조금 더 이해하기 쉽게 그리고 코드의 모양을 좀더 이쁘게 바꿀 수 있지 않을까요? 이미 작성했던 코드를 다시 작성한다거나, 기존에 자신이 작성했던 코드를 [리팩토링]한다면 많은 것을 얻을 수 있을 것입니다. [임인택] 오케바리 --[강희경] DeleteMe) 어째 어투가 창준이형의 그것이랑 비슷하군. ---- SeeAlso [강희경] ---- [숫자야구]