디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

자바로 콘솔용 텍스트야구겜을 만들엇는데...

야구(211.108) 2011.01.31 16:08:08
조회 137 추천 0 댓글 11

일단 스크롤 압박 미안해


import java.util.Scanner;
class Baseball{
    public static void main(String args[]){
        new Baseball().Go();
    }
    void Go(){
        Scanner key=new Scanner(System.in);
        int[] bArr=Suffle();
        
        int cnt=0;    //게임에서 시도한 횟수를 체크하기 위한 count 변수
        boolean win=false;    //게임승리유무를 알기 위한 win 변수
        while(cnt<10){
            int strike=0;
            int ball=0;
            System.out.println();
            System.out.print("3자리 숫자를 입력해 주세요>");
            int n=key.nextInt();    //스캐너로 3자리숫자를 입력받고
            int first=n/100;        //100의 단위를 first에 저장
            int second=(n%100)/10;    //10의 단위를 second에 저장
            int third=(n%100)%10;    //1의 단위를 third에 저장
            int[] nArr={first,second,third};    //세 숫자를 배열로 저장
            for(int i=0;i<3;i++){
                if(nArr[i]==bArr[i]){        //각 자리 숫자가 맞으면 strike증가
                    strike++;
                }
                else if(i==0){                //안 맞으면 각각의 경우에 대해 다른자리 숫자가 맞으면 ball 증가
                    if(nArr[i]==bArr[1]) ball++;    
                    else if(nArr[i]==bArr[2]) ball++;    
                }
                else if(i==1){
                    if(nArr[i]==bArr[0]) ball++;                    
                    else if(nArr[i]==bArr[2]) ball++;                    
                }
                else if(i==2){
                    if(nArr[i]==bArr[0]) ball++;
                    else if(nArr[i]==bArr[1]) ball++;                
                }

            }
            System.out.println();
            System.out.println("스트라이크 : "+strike+"개");    //결과 출력
            System.out.println("볼 : "+ball+"개");
            cnt++;                                //계산 후에 카운트 증가
            System.out.println("남은 횟수 : "+(10-cnt)+"번");    //남은 횟수 출력
            if(strike==3){                        //스트라이크가 3개가 되면
                win=true;                        //승리유무를 true로 바꾸고
                break;                            //while문 빠져나감
            }
        }
        if(win==true){                            //결과 출력
            System.out.println();
            System.out.println(cnt+"번 만에 성공하셨습니다 축하드립니다^^;");
        }
        else{
            System.out.println();
            System.out.println("실패하셨군요.. 다시 도전해 보세요 ㅠ.ㅠ");
        }
    }
    int[] Suffle(){                //1~9까지 중복되지 않는 숫자 3개의 배열을 만드는 메서드
        int[] arr=new int[3];
        for(int i=0;i<3;i++){
            int dice=(int)(Math.random()*9)+1;    //1~9중 무작위로 숫자하나를 뽑는다
            if(i==0)
                arr[i]=dice;    // 첫번째 숫자는 배열에 바로 저장한다.
            else{
                for(int j=0;j<i;j++){    //앞에서 저장한 배열의 수 만큼 검사하기 위해 j<i라는 조건을 달았다.
                    if(dice==arr[j]){    //만약에 앞에있던 배열의 숫자와 무작위 숫자가 같으면
                        i--;            //i를 다시 감소시킨 후
                        break;            //밖의 for문으로 빠져나가서 같은 작업을 한다.
                    }
                    else
                        arr[i]=dice;    //앞에있던 배열의 숫자와 같지않으면 배열에 저장한다.    
                }
            }
        }
        return arr;    
    }
}




한달동안 열심히 배워서 나름 이거 만들어봤는데
너무 날코딩인거같아서말이야..

저기 두껍고 글씨큰부분에서 볼카운트를 검사하는건데
저걸 어떻게 줄일 수 있는 방법이 없을까??


추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 가족과 완벽하게 손절해야 할 것 같은 스타는? 운영자 24/06/24 - -
236645 면접떡밥이냐아능 [4] sloth_갤로그로 이동합니다. 11.03.02 104 0
236644 나 진짜 영어공부해야겠다... 꿀레(14.33) 11.03.02 66 0
236643 물댜횽 떡밥과 공비횽, 성대횽, 후시기바나횽, 세브횽등등등을 보며.. [12] 캐닭(112.133) 11.03.02 222 0
236642 횽들에게 질문! [1] 도라에몽우동갤로그로 이동합니다. 11.03.02 54 0
236641 키보드 두들기는 색히들 왜케 좌빨들이 많냐? [4] ㅇㅇ(116.45) 11.03.02 131 0
236640 솔직히 내가 진짜 질문하고 싶었던 것... [10] 물속의다이아갤로그로 이동합니다. 11.03.02 183 0
236639 구글 크롬의 문제점.. [2] 수Z갤로그로 이동합니다. 11.03.02 189 0
236638 어떡해 일기 2-21 :: 개강 그리고 전자과 첫 수업 [8] 어떡해갤로그로 이동합니다. 11.03.02 501 0
236632 님들 프로그래밍은 MFC 하세여 [9] SODmaster갤로그로 이동합니다. 11.03.02 249 0
236631 형들, nprotect Anti-virus/spyware 이 프로그램말야 [4] ㅁㄴㅇㄹ(121.139) 11.03.02 121 0
236630 사람들이 좀 착각을 하는듯??? [2] 음...(114.205) 11.03.02 149 0
236629 물속의다이아 님의 "질문"에 대한 저의 답안지 [8] 후시기바나(220.67) 11.03.02 193 0
236627 죽엇니? 프갤아! [2] hellow(123.142) 11.03.02 67 0
236626 내가 6년차 자바 개발자에게 그 질문을 한 이유... [7] 물속의다이아갤로그로 이동합니다. 11.03.02 310 0
236625 안철수횽은 왜 본질을 논하지 않을까? [3] (121.184) 11.03.02 152 0
236624 형들아 NC나 NHN같은데 보면 근속연수가 5년도 안돼잖아여... [3] ㅁㅁ(211.222) 11.03.02 285 0
236623 살려줘 ㅠ 지금 프로그래밍언어 뭐 배울지 모르겠다. [5] 프로그래밍(124.53) 11.03.02 173 0
236621 물다횽의 면접 [10] SODmaster갤로그로 이동합니다. 11.03.02 212 0
236620 자바 가비지 콜렉터 동작원리? [1] [성대아싸]갤로그로 이동합니다. 11.03.02 326 0
236619 JAVA 프로그래밍이랑 C프로그래밍이랑 비주얼베이직이랑 차이점이 뭐임? [10] 고전게임(124.53) 11.03.02 237 0
236618 레포트 하는도중 궁금한게 생겼어요 [11] 우호앙(203.227) 11.03.02 101 0
236617 내가 이상한건가...자바 6년차가 아래 질문을 모른다고 해서 심하다니.. [43] 캐닭(112.133) 11.03.02 393 0
236616 si 비젼있을까?? [4] 쿄스케갤로그로 이동합니다. 11.03.02 208 0
236615 물다횽의 면접 질문을 보고.... [11] 캐닭(112.133) 11.03.02 284 0
236614 파이썬과 C의 효율성에 관한 작은 질문 하나 드립니다. [9] 전설의기타리스트갤로그로 이동합니다. 11.03.02 224 0
236613 군대가서도 IT공부할려면 어디로가야하죠? [6] (220.94) 11.03.02 106 0
236611 c기초플러스 색깔마다 내용다름?? po게이wer갤로그로 이동합니다. 11.03.02 101 0
236610 밑에 글을 보다 보니 닷넷 Winform에서 MVC를 적용할 수 있는데... [1] 물속의다이아갤로그로 이동합니다. 11.03.02 130 0
236608 C# 객체에 관한 질문 이에요 [7] 허허벌판갤로그로 이동합니다. 11.03.02 121 0
236607 아이패드 있는 횽아 있어? [5] 허허벌판갤로그로 이동합니다. 11.03.02 99 0
236606 C++ 쥐꼬리 만큼도 모르는 뉴빈데요 [9] 우호앙(203.227) 11.03.02 146 0
236605 취업하기 싫어서 질문하나 드립니다. 안드로이드 c++로 개발 방법 원래궁핍갤로그로 이동합니다. 11.03.02 162 0
236604 프갤러들을 위한 천재플머 강의2 - 천재플머 명언 - [4] 천재플머(175.196) 11.03.02 182 0
236603 프갤이 어쩌다 이리 개망했냐? ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ [10] ㅋㅋㅋ(121.182) 11.03.02 249 0
236602 형들 오목게임 만들려하는데 [8] 루젯(221.147) 11.03.02 144 0
236601 헤드퍼스트 씨도 있어? [1] 쿄스케갤로그로 이동합니다. 11.03.02 98 0
236599 스마트폰 국비지원 아직 않될텐데 [1] 계백(61.255) 11.03.02 94 0
236598 잇힝~ 개강첫날부터 기분조타~~ [4] (121.186) 11.03.02 97 0
236597 선린고....내신....... 선린(211.41) 11.03.02 320 0
236596 면접 볼 때 내가 질문을 네개만 던졌어. [22] 물속의다이아갤로그로 이동합니다. 11.03.02 431 0
236595 c++ 클래스가 작동한다. 트럼프조커갤로그로 이동합니다. 11.03.02 77 0
236594 무슨 헤드퍼스트고 머시고 난리야. 책 쳐보지 말라고... [5] 천재플머(175.196) 11.03.02 160 0
236593 [구직] 월 45만원 신입 프로그래머 구직합니다. - 연락 좀 주세요- [9] 천재플머(175.196) 11.03.02 248 0
236592 avr 계좌제 학원 없음? [1] 이모군(211.40) 11.03.02 82 0
236591 스맛폰앱 개발 관련 무료교육광고가 많네.. [3] (121.184) 11.03.02 122 0
236590 현재 노트북에 탑제되는 i5는 듀얼코어에 하이퍼스레딩기술 탑제된거지?? [4] 리본(175.116) 11.03.02 232 0
236589 자바 개발 6년이상 한 사람들에게 묻는다. [11] 물속의다이아갤로그로 이동합니다. 11.03.02 366 0
236587 오빠야들. ftp 에서 linux 다운받았는대 win7 에서 md5 [2] iljeomobolt갤로그로 이동합니다. 11.03.02 107 0
236586 결제관련 데이터베이스 구축 및 진행현황 보는걸 만들어야되는데 견적좀.. [1] eom293갤로그로 이동합니다. 11.03.02 102 0
236585 근데 왜 boolean형은 2바이트, 4바이트나 쳐묵쳐묵하는거지? [4] ㅇㅇㅇ(121.144) 11.03.02 141 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2