풀스택 과정 day04_Java

정유섭·2022년 3월 9일
0

2022.03.08.(화)

반복문

코딩테스트 및 자바 설정


JAVA HOME 설정

내 컴퓨터 -> 마우스 오른쪽 버튼 -> 속성 -> 고급 시스템 설정 -> 환경 변수 -> 새로 만들기

변수 이름 : JAVA_HOME

변수 값 : "내 컴퓨터 -> C -> program Files -> Java -> jdk 1.8.0_321"
path - 편집 -> 새로 만들기 -> "%JAVA_HOME%\bin"


수업 커리큘럼
: JAVA, DBMS, HTML, CSS, JavaScript(JAVA와 연관X), jQuery, JSP, Spring, C

<Java의 정석, 열혈강의 JSP, Spring 토비>

네이버
카카오톡
라인
쿠팡
배민
직방
당근마켓
토스


[코딩테스트]

백준닷컴 문제 단계
https://www.acmicpc.net/

프로그래머스(코딩테스트 연습)
https://programmers.co.kr/

코드업
https://codeup.kr/

http://jungol.co.kr/ 정보올림피아드 [language coder]
https://www.oncoder.com/
https://leetcode.com/
https://www.codility.com/
https://www.hackerrank.com/
https://www.sololearn.com


1. 반복문

1-1. for문

- for문은 사람이 직접 처리하기에 부담스러운 반복적인 작업을 처리하는데에 매우 용이하다.
- (1) : 최초로 초기식을 설정한다.
- (2) : 초기식을 설정한 다음에는 조건식을 판단한다.
- (3) : 만약 조건식이 참이라면, 반복적으로 동작할 구문을 1회 수행한다.
- (4) : 반복구문을 수행한 후, 증감식으로 이동한다.
- (5) : 증감식을 수행한 후, 다시 조건식으로 이동한다. 여전히 조건식이 참이라면 반복수행을 처리하고,
그렇지 않다면 for문을 종료한다.
** <이중 for문까지는 사용하지만, 3중 for문은  필요한지 고민이 필요하다!>


[ for문 사용법 ]


for문 엑셀 테스트


[ for문 예시 ]


[ for문 누적합 구하기 ]


[ for문 구구단 알고리즘 ]

1-2. while문

- while문 역시 for문과 마찬가지로 반복적인 처리를 수행하는 문법이다.

- for문은 초기식, 조건식, 증감식을 모두 내장하는 반면, while문은 조건식만을 내장하기 때문에
  초기식과 증감식을 외부에 따로 정의해 주어야 한다.


[ while문 사용법 ]


[ while문 누적합 구하기 ]


[ while문 구구단 알고리즘 ]

1-3. do ~ while문

- 조건의 판별을 나중에 수행하는 반복문 형태

- 초기식을 설정한 후에 do{...} 안의 문장을 우선적으로 1회 실행하고 조건을 판별하므로,
  조건이 참이 아니더라도 최소 1회는 실행된다.


[ do ~ while문 사용법 ]


[ do ~ while문 누적합 구하기 ]


[ do ~ while문 구구단 알고리즘 ]


[ do ~ while문 특징 (while의 조건문에 상관없이 do {..} 의 문장을 우선적으로 실행!) ]

1-4. 무한 루프

- 증감식이 설정되지 않거나, 증감식이 수행되더라도 
  조건식이 거짓이 되지 않는 형태

- 조건식이 항상 참이므로, 반복문이 종료되지 않는다.

- 프로그램이 PC의 자원을 매우 많이 사용하게 되므로,
  시스템 다운을 발생시킬 수 있다.
  • while문의 무한 루프 예
while (true) {
	System.out.println("Hello");
}
  • for문의 무한 루프 예
for (int i = 0; i < 10; i--) {
	System.out.println("Hello");
	System.out.println(i);
}
** <개발하는 과정에서는 존재할  있으나, 배포가 되었을 때는 존재하면 안됨!!>


[ for문 무한 루프 예 ]


[ while문 무한 루프 예 ]

1-5. 문법의 중첩 사용

- 조건문과 반복문 등의 문법을 중복해서 사용할 수 있다.


[ 문법의 중첩 사용 ]


[ 이중 if문 사용 예제 ]


2. 변수의 범위( = 변수의 스코프)

2-1. 자신보다 하위 블록으로는 침투할 수 있다.

- 사용 가능
int num = 100;
if (num == 100) {
	System.out.println(num);
}
- 사용 가능
int num = 100;
for (int i = 0; i < 10; i++) {
	System.out.println(num + i);
}

2-2. 자신이 선언된 블록 밖으로는 빠져나갈 수 없다.

- 사용 불가 : 변수 result가 if 블록 안에서 생성되었으므로 사용 불가
int num = 100;
if (num == 100) {
	int result = num + 100;
}
System.out.println(result);
- 사용 불가 : i가 for문을 위한 괄호 안에서 사용되었으므로 사용 불가
for (int i = 0; i < 10; i++) {
	...
}
System.out.println(i);

2-3. 블록 안에서 선언된 변수는 블록 밖에서 존재하는 동일한 이름의 변수와는 이름만 동일할 뿐, 다른 값으로 인식된다.

- 사용 가능
int target = 100;
if (target == 100) {
	int num = target + 100;
} else {
	int num = target - 100;
}


[ 변수의 사용 범위 예 (주석 참고) ]


3. 예제

3-1. for문 예제


[ 누적합 문제와 구구단 알고리즘 ]

3-2. while문 예제


[ while문 출력 알고리즘 ]

3-3. 예제 실행 및 결과


[ 예제 실행 결과 ]

profile
도비는 자유에요!😝

0개의 댓글