반복문
주어진 조건이 만족할 때까지 수행문을 반복적으로 수행함
while, do-while, for문이 있음
조건의 만족과 반복가능 여부에 대해 정확한 코딩을 해야 함
while문
- 조건식이 참인 동안 수행문을 반복해서 수행
- 하나의 조건에 대해 반복수행이 이루어질 때 사용
- 조건이 맞지 않으면 수행문이 수행되지 않음
- 주오 조건식 true, false로 나타남
public class Main
{
public static void main(String[] args) {
int num = 1;
int sum = 0;
while(num <= 10){ // num 값이 10보다 작거나 같을 동안
sum += num; // 합계를 못하는 sum에 num을 더하고
num++; // num에 1씩 더해나감
}
System.out.println("1부터 10부터까지의 합은 " + sum + "입니다.");
}
}
do while문
- 먼저 수행문을 한 번 수행하고 조건식 체크
- 수행문이 반드시 한 번 이상 수행 되어야 하는 경우 사용
- 하나의 조건에 대해 반복수행이 이루어질 때 사용
- 단, 수행문이 반드시 한번 이상 수행됨
public class Main
{
public static void main(String[] args) {
int num = 1;
int sum = 0;
do{
sum += num;
num++;
}while(num < 11);
System.out.println("1부터 10부터까지의 합은 " + sum + "입니다.");
}
}
for문
- 반복문 중 가장 많이 사용하는 반복문
- 주로 조건이 획수인 경우에 사용
- 초기화식, 조건식, 증감식을 한꺼번에 작성
- 수의 특정 범위, 횟수와 관련한 반복수행에서 주로 사용
for문 수행과정
num값 | 1(초기화) | 2 | 3 | 4 | 5 | 6 |
조건식 (num<=5) |
참 | 참 | 참 | 참 | 참 | 거짓 |
출력 값 | 1 | 2 | 3 | 4 | 5 | for문 종료 |
증감식 | 수행 | 수행 | 수행 | 수행 | 수행 | X |
중첩된 반복문
- 반복문 내부에 또 반복문이 사용됨
- ex) 구구단
public class Main
{
public static void main(String[] args) {
for(int dan = 2; dan <= 9; dan++){
for(int times = 1; times <= 9; times++){
System.out.println(dan + "x" + times + "=" + dan * times);
}
System.out.println(); // 한 줄 띄워서 출력
}
}
}
continue문
- 반복문과 함께 쓰이며, 반복문 내부 continune 문을 만나면 이후 반복되는 부분을 수행하지 않고 조건식이나 증감식을 수행함
- 1부터 100까지 홀수마 더하는 예
public class Main
{
public static void main(String[] args) {
int total = 0;
int num;
for(num =1; num <=100; num++){ //100까지 반복
if(num % 2 == 0) // num 값이 짝수인 경우
continue; // 이후 수행을 생략하고 num++수정
total += num; // num 값이 홀수인 경우에만 수정
}
System.out.println("1부터 100까지의 홀수의 합은: " + total + "입니다.");
}
}
break문
- 반복문에서 break 문을 만나면 더 이상 반복을 수행하지 않고 반복문을 빠져나옴
- 중첩된 반복문 내부에 있는 경우 가장 가까운 반복문 하나만 빠져나옴 아래의 겨우 내부 반복문만 나옴
public class Main
{
public static void main(String[] args) {
int sum = 0;
int num = 0;
for(num =0; ; num++){
sum +=num;
if(sum >=100) // sum이 100보다 크거나 같을 때(종료조건)
break; // 반복문 중단
}
System.out.println("num: " + num);
System.out.println("sum: " + sum);
}
}
'자바' 카테고리의 다른 글
[JAVA] 클래스와 객체 1 (0) | 2022.11.19 |
---|---|
[JAVA] 객체와 클래스 (0) | 2022.11.19 |
[JAVA] 조건문 (0) | 2022.11.14 |
[JAVA] 기본 출력 (0) | 2022.11.13 |
[JAVA] 백준 기초공부 1 (0) | 2022.11.12 |