자바 질문이있습니다


  1. 문제입니다 while문의 조건에서 i를 이용해서 1부터 10까지 출력해 보세요. 그리고 if문을 추가하여 2의 배수만출력하세요

  2. 제가 코딩한 코드입니다.

    public static void main(String[] args){
        int i = 1;
        while(i<11){
                if(i%2==0){
                    System.out.println(i);
          }
                i++; 
        }
      }
    }
    
  3. 제가 궁금한것이 왜 i++이 밖으로 나와야지 출력이되나요? 안에 들어가있으면 아무것도 출력이안되던데.. 많이헤깔립니다 ㅠㅠ

  • 2016년 02월 22일에 작성됨

조회수 145


1 답변


좋아요
2
싫어요
채택취소하기

i++; 명령이

if(i%2==0){
System.out.println(i);
i++;
}

이런식으로 if문 안에 들어가있다면 i는 조건이 부합할때만 증가하게됩니다. 처음 i의 값은 1이기때문에 i%2 가 0이냐는 조건엔 당연히 false가 되서 조건문 안의 내용은 실행되지않습니다.

그래서 i는 증가되지 않고 i가 2가되지못하기때문에 아무것도 출력되지않게되는겁니다.

  • 2016년 02월 22일에 작성됨

  • 이해가 되는설명 정말감사합니다 :)    김지성   2016.2.22 18:20     

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close