• Home
  • About
    • ming photo

      ming

      studying

    • Learn More
    • Twitter
    • Facebook
    • Instagram
    • Github
    • Steam
  • Archive
    • All Posts
    • All Tags
    • All categories
  • categories
    • HTML+CSS+JavaScript
    • JAVA
    • Algorithm
    • DB
    • JSP
    • 정보처리기사
    • Spring
    • Thymeleaf
    • 기술면접
  • Projects

JAVA-반복문

05 Feb 2021

* while문

  • EX1) : 1~10 까지 1씩 증가
      package com.javateam.jse;
    
      public class JavaEx19 {
    
              public static void main(String[] args) {
    
                  // while(false) { // unreachable code(dead code)
                  // while(true) { // 무한 반복문(infinite loop)
                  //for (;;) { // 무한 반복문(infinite loop)
    
                  int sum = 0; // 합계
                  int i = 1; // 카운터(계수 변수)
                  while(i<=10) {
    
                      // 합계 연산
                      sum += i ;
                      System.out.printf("1~%d까지의 합 = %d%n ", i,sum );
                      i++; // 증감 
                  }
                  System.out.println("--------------------");
                  System.out.println("1~10까지의 합=" + sum);
    
          }
    
      }
    
    
  • EX2) : 10~1까지 1씩 감소

      package com.javateam.jse;
    
      public class JavaEx20 {
    
          public static void main(String[] args) {
    
              int sum = 0; // 합계
              int i = 10; // 카운터(계수 변수)
              while(i>=1) {
    
                  // 합계 연산
                  sum += i ;
                  System.out.printf("1~%d까지의 합 = %d%n ", i,sum );
                  i--; // 증감 
              }
              System.out.println("--------------------");
              System.out.println("1~10까지의 합=" + sum);
    
          }
    
      }
    
    
    

* do-while 문

  • 첫번째 연산을 무조건 실행 후 반복

      package com.javateam.jse;
    
      public class JavaEx21 {
    
          public static void main(String[] args) {
    
              int sum = 0; // 합계
              int i = 1; // 카운터(계수 변수)
              do {
                  // 합계 연산
                  sum += i ;
                  System.out.printf("1~%d까지의 합 = %d%n ", i,sum );
                  i++; // 증감 
              }while (i <=10);
              System.out.println("--------------------");
              System.out.println("1~10까지의 합=" + sum);
    
          }
    
      }
    

* 구구단 계산

  • EX) 입력받은 단 구구단 계산

    
     package com.javateam.jse;
    
     import java.util.*;
    
     public class JavaEx22 {
    
         public static void main(String[] args) {
                    
             // 구구단 (times table, multiplication table)
    
             // 단 입력
             System.out.println("단 입력 : ");
             Scanner sc = new Scanner(System.in);
             int num = sc.nextInt();
    
             System.out.println(num + "단 출력");
    
             // 연산
             for(int i=1; i<=9; i++) {
                    
                 System.out.printf("%d X  %d = %d%n",num, i,num*i);
    
             }
                
             sc.close();
    
         }
    
         }
    
  • EX) 구구단 전체 계산

      package com.javateam.jse;
    
      import java.util.*;
    
      public class JavaEx23 {
    
          public static void main(String[] args) {
                    
                  // 단
                  for(int i=2; i<=9; i++) {
    
                  // 곱하기
                  for(int j =1; j<=9; j++) {
                      System.out.printf("%d X %d = %d%n", i,j,i*j);
                  }
                  System.out.println("------------");
    
              }
    
          }
    
      }
    
  • while 를 이용한 구구단 출력

      package com.javateam.jse;
    
      import java.util.*;
    
      public class JavaEx24 {
    
          public static void main(String[] args) {
                
              // while 문 2개만을 이용하여 구구단을 구현하시오
              int i = 1;
              int j = 1;
              while(i<=9) {
    
                  while(j<=9) {				
                      System.out.printf("%d X %d = %d%n", i,j,i*j);
                      j++;
    
                  }	
                  j = 1; // j를 초기화 해줘야 한다 
                  // * 2단만 출력 오류 => 주의사항 ) 카운터 변수 수동 초기화 !
                  System.out.println("----------");
                  i++;
              }
    
          }
      }
    
    

    ★ while 문은 for문처럼 카운터 변수를 수동으로 초기화 해주지 않는다

* countinue 문

  • 일시적으로(조건) 그 순가만 분기(skip)
  • for, while,do-while 증감식 또는 조건식으로 돌아감

      package com.javateam.jse;
    
      public class JavaEx26 {
    
          public static void main(String[] args) {
    
              for(int i=1; i<=10; i++) {
    
              // 일시적으로(조건) 그 순가만 분기(skip)
              if(i%2 ==0) {
                  continue; // 짝수일 때는 스킵하고 홀수만 출력
              }
                  System.out.println(i);
              }
          }
      }
    


Share Tweet +1