FIF's 코딩팩토리

자바 기초 NCS교육과정(6)-반복문 for 본문

Back-End/국비 NCS교과과정

자바 기초 NCS교육과정(6)-반복문 for

FIF 2019. 7. 3. 10:22
반응형

이번 시간에는 반복문(for문)에 대하여 알아보겠습니다.

 

  for(초기식; 조건식; 증감식){
     수행할 문장;
  }
  1 조건식이 true일때까지만 반복문을 실행한다.


  2 for문 실행순서


    초기식 -> 조건식(true) -> 수행할 문장 -> 증감식
        -> 조건식(true) -> 수행할 문장 -> 증감식
        -> 조건식(false) -> for문을 빠져나옴


  3 초기식은 한번만 수행한다.


  4 초기식, 조건식, 증감식은 생략할 수 있지만 for(;;){} 세미콜론 필수


  5 초기식, 증감식은 생략하거나 여러개 사용할 수 있다.
    조건식은 생략하거나 한개만 사용한다.
    for(int a=3, b=4;  ; sum+=a, hap+=b){}


  6 조건식을 생략하면 언제나 true로 인식한다.
   for문의 종료 시점을 정확히 파알할 수 없을때 for문을 무한루프로 설정한다
  
  

 

Java028_for.java

public class Java028_for {

	public static void main(String[] args) {
		int num, sum;
		for (num = 1, sum = 1; num <= 5; num++, sum += num) {
			System.out.printf("%2d, %2d\n", num, sum);
		}
	}//end main()
}//end class

 

Java029_for.java

public class Java029_for {

	public static void main(String[] args) {
		int sum=0; //누적을 저장할 변수
		int i;
		
		for(i=1; ;i++) {
			sum=sum+i;
			if(sum>=15) {
				break;//현재 수행중인 반복문을 빠져나옴
			}
		}
		//i=5 sum=15
		System.out.printf("i=%d sum=%d\n",i,sum);
	}//end main()
}//end class

 

Java030_for.java

public class Java030_for {

	public static void main(String[] args) {
		int sum = 0; // 누적을 저장할 변수
		int i;

		for (i = 1;; i++) {
			sum = sum + i;
			System.out.printf("i=%d sum=%d\n", i, sum);
			
			if (sum >= 15) {
				break;// 현재 수행중인 반복문을 빠져나옴
			}
		}
		// i=5 sum=15
	}//end main()
}//end class

 

Java031_for.java

아래 처럼 출력결과가 나오도록 코딩하세요.

고민하는 시간이 많을수록 실력도 쌓입니다.

  i=1
  i=2
  i=3
  i=4
  i=5
  sum=15

 

 

 

 

 

 

 

 

 

 

 

public class Java031_for {

	public static void main(String[] args) {
		int sum = 0; // 누적을 저장할 변수
		int i;

		for (i = 1;; i++) {
			System.out.printf("i=%d\n", i);
			sum = sum + i;
			if (sum >= 15) {
				break;// 현재 수행중인 반복문을 빠져나옴
			}
		}
		System.out.printf("sum=%d\n", sum);
	}//end main()
}//end class

 

 

Java032_for.java

 1부터 10까지 누적된 값을 출력
 sum=55

 

 

 

 

 

 

 

 

 

 

public class Java032_for {

	public static void main(String[] args) {
		int sum = 0;
		int i;
		for (i = 1; i <= 10; i++) {
			sum += i;
		}
		System.out.printf("sum=%d", sum);
	}//end main()
}//end class

 

Java034_for.java

3의배수만 제외하고 출력하는 프로그램
  1 2 4 5 7 8 10

 

 

 

 

 

 

 

 

 

 

public class Java034_for {

	public static void main(String[] args) {
		for (int i = 1; i <= 10; i++) {
			/*
			 * if(i%3!=0) { System.out.println(i); }
			 */
			if (i % 3 == 0) {
				// 반복문에서 continue을 실행하면 조건식으로 이동한다.
				// for문에서 continue를 실행하면 증감식으로 이동한다.
				continue;
			}

			System.out.println(i);
		}
	}//end main()
}//end class

Java035_for.java

 3행 X 4열
  1 2 3 4
  5 6 7 8
  9 10 11 12

 

조건 1. 초기값1 종료값12 증가값1
조건 2. 4의배수에서 줄바꿈
 

 

 

 

 

 

 

 

 

 

 

public class Java035_for {

	public static void main(String[] args) {
    int cnt=1;
		for(int row=1;row<=3;row++) {//행
			for(int col=1;col<=4;col++) {//열
				System.out.printf("%4d",cnt);
				cnt++;
			}
			System.out.println();
		}
	}//end main()
}//end class

Java036_for.java

출력결과

 

   1     2     3       4    5
  (1,1) (1,2) (1,3) (1,4) (1,5)
   1      2     3     4     5
  (2,1) (2,2) (2,3) (2,4) (2,5) 


   1  2  3  4  5
   1  2  3  4  5
   1  2  3  4  5
 

 

 

 

 

 

 

 

 

 

 

 

public class Java036_for {

	public static void main(String[] args) {
		
		for(int row=1;row<=4;row++) {//행
			for(int col=1;col<=5;col++) {//열
				System.out.printf("%4d",col);
			}
			System.out.println();
		}
	}//end main()
}//end class

Java037_for.java

 
  반복문에서 특정 위치로 이동(continue)을 하거나 빠져나올때(break)
  반복문은 label을 선언하고 호출하면 된다.
 

 

 

 

 

 

 

 

 

 

 

 

public class Java037_for {

	public static void main(String[] args) {
		move: for (int i = 1; i <= 3; i++) {
			for (int j = 1; j <= 2; j++) {
				System.out.printf("j=%d\n", i);
				// break move;
				continue move;
			}
		}
	}//end main()
}//end class
반응형
Comments