[12일차] 19. 반복문 -for문 / 20. 반복문이 여러 번 포개진 중첩 반복문 / 21. 중간에 멈추는 break문, 무시하고 계속 진행하는 continue문

WOOJEON JANG·2022년 1월 7일
0

Part01. 자바 프로그래밍

ch 01. 자바 기초

<19. 반복문 -for문>


<for문의 수행 순서>

  • for(초기화식; 조건식; 증감식){
    수행문;
    }

<for문 예제(while과 비교)>

  • 1부터 10까지 더한 결과를 출력하는 예제
package ch19;

public class ForTest {

	public static void main(String[] args) {
	
		int count =1;
		int sum = 0;
		
		for( int i = 0 ; i<10; i++, count++) {  //10번 반복, count++ ->1씩 증가
			sum += count;
			
		}
		System.out.println(sum);
		
////////////////////////////////////////////////////////		
		int num = 1;
		int total = 0;
		
		while( num <= 10) {
			total += num;
			num++;
		}
		System.out.println(total);
	}
}

<각 반복문은 주로 언제 사용하나요?>


<for문의 문장들은 생략가능 합니다.>
  • 초기화식 생략 : 이미 이전에 값이 초기화 되어 for 내부에서 값을 지정할 필요가 없는 경우

  • 조건식 생략 : 반복 수행에 대한 조건이 수행문 내부에 있는 경우

  • 증감식 생략 : 증감식에 대한 연산이 복잡하거나 다른 변수의 연산 결과값에 결정되는 경우

  • 무한 반복

<참고>

i+1과 i++은 다르다.
i+1 자체는 i값이 증가되지 않는다.
증가하기 위해서는 대입연산자를 써야한다.
i++은 i=i+1, i+=1 과 동일한 의미이다.
따라서 값을 증가시켜려고 한다면 i++을 사용하면 된다.

오늘의 공부 소감(.19) :
for문과 while문의 응용 예제들을 많이 작성해 보고싶다...



<20. 반복문이 여러 번 포개진 중첩 반복문>


<중첩 반복문이란?>

  • 반복문 내부에 또 다른 반복문이 있음

  • 여러 겹으로 반복문을 겹쳐서 구현 가능(단 수행시간에 문제가 발생할 수 있음)

  • 외부 반복문과 내부 반복문 간의 변수 값 변화에 유의하며 구현하여야 함

  • 예제(for문으로 사용)


System.out.println(); -> 개행할 때 사용

  • while문으로 작성한 중첩 반복문은 아래와 같다

21행의 count = 1; 을 쓴 이유는 count를 초기화해주어야 다시 2번째 while문 안으로 들어갈 수 있기 때문이다.

오늘의 공부 소감(20.) :
for문과 while문의 적절한 사용법이 아직 조금 헷갈린다..



<21.중간에 멈 추는 break문, 무시하고 계속 진행하는 continue문>


<break문 사용하기>

  • 감싸고 있는 제어문의 블록을 빠져 나오는 기능(switch문 에서도 사용)
  • 반복문에서는 주로 조건문(if)와 같이 사용하여 조건에 해당되는 경우, 반복 수행을 멈추고 반복문 외부로 수행이 이동됨
  • 여러 반복문이 종합되어 있는 경우엔 break문이 포함되어 있는 반복문만 빠져 나옴

<break문 예제>

  • 1부터 숫자를 더하여 100이 넘는 순간의 그 숫자와 합을 출력하세요

결과가 105와 15인 이유는
for문의 특성상 num++ 연산 이후 sum<=100; 조건체크를 하기 때문에 이미 15로 증가된 상태로 끝나는 것이다.

이것을 고치려면 아래와 같이 바꾸어야 한다.


13행의 if문을 추가해서 100보다 크거나 같아지는 순간에 break로 빠져나오도록 만들면 1부터 14까지 더했을 때 100이 넘는 순간임을 알 수 있다.


<continue문 사용하기>

  • 반복문 내부에서 조건문(if)와 같이 사용하며, 조건이 맞는 경우(true)이면 이후 반복문 블럭 내부의 다른 수행문들을 수행하지 않음

<continue문 예제>

  • 1부터 100까지 숫자 중 3의 배수를 출력하세요

10행의 식을 가독성을 높이기 위해 아래와 같이 괄호로 구분해주면 좋다.

오늘의 공부 소감(21.) :
자바 기초가 드디어 끝났다...............
드디어 내일부터 객체지향공부를 시작한다 ㅎㅎ

profile
back-end enginneer

0개의 댓글