본문 바로가기

Java

반복문 for

반복문 for while

 

"코드에서 반복적인 패턴이 보일 때"

 

1. 반복문을 쓸 수 있을지

2. 쓴다면 어떻게 쓸지 생각한다.

 

for문

기본구조

for (초기화식; 조건식; 증감식) {

}

 

for문은 반복하는 횟수를 정확히 알 때 주로 사용한다.

package ch04;
public class ForMainTest1 {
    // 메인
    public static void main(String[] args) {

        // 반복문 -  반복적인 패턴이 보인다면 반복문을 생각해보자

        System.out.print(0 + " ");
        System.out.print(1 + " ");
        System.out.print(2 + " ");
        System.out.print(3 + " ");
        System.out.print(4 + " ");
        System.out.print(5 + " ");
        System.out.print(6 + " ");
        System.out.print(7 + " ");
        System.out.print(8 + " ");
        System.out.print(9 + " ");
        
        System.out.println();
        
        int i;
        // -- 초기화식; 조건식; 증감식 (조건식은 참(ture)과 거짓(false)을 리턴한다.)
        for (i = 0; i < 10; i++) {
            //수행문: 조건식이 참(true)이라면 이 구문이 수행된다.
            System.out.print(i + " ");
            // 숫자 0을 i변수로 치환해봤다.
            // 1. i = 0
            // 2. i = 1
            // 3. i = 2
            // 4. i = 3
            // 5. i = 4
            // 6. i = 5
            // 7. i = 6
            // 8. i = 7
            // 9. i = 8
            // 10. i = 9
        } // end of for
        System.out.println("최종결과 i값: " + i);

    } // 메인 끝
}

 

for문을 통해 구구단 만들기

package ch04;
public class ForMainTest2 {
    // entry
    public static void main(String[] args) {

        // 2 * 1 = 2
        // 2 * 2 = 4
        // 2 * 3 = 6
        // 2 * 4 = 8
        // 2 * 5 = 10
        // 2 * 6 = 12
        // 2 * 7 = 14
        // 2 * 8 = 16
        // 2 * 9 = 18

        // 화면에 구구단 2단을 출력하시오.
        System.out.println("2 * 1 = 2");
        System.out.println("2 * 2 = 4");
        System.out.println("2 * 3 = 6");
        System.out.println("2 * 4 = 8");
        System.out.println("2 * 5 = 10");
        System.out.println("2 * 6 = 12");
        System.out.println("2 * 7 = 14");
        System.out.println("2 * 8 = 16");
        System.out.println("2 * 9 = 18");
        System.out.println("==========");

        // 변수의 활용(효용)
        int num = 2;
        System.out.println(num + " * 1 = 2");
        System.out.println(num + " * 2 = 4");
        System.out.println(num + " * 3 = 6");
        System.out.println(num + " * 4 = 8");
        System.out.println(num + " * 5 = 10");
        System.out.println(num + " * 6 = 12");
        System.out.println(num + " * 7 = 14");
        System.out.println(num + " * 8 = 16");
        System.out.println(num + " * 9 = 18");
        System.out.println("==========");

        // 3단을 출력하시오.
        num = 3;
        System.out.println(num + " * 1 = " + (num * 1));
        System.out.println(num + " * 2 = " + (num * 2));
        System.out.println(num + " * 3 = " + (num * 3));
        System.out.println(num + " * 4 = " + (num * 4));
        System.out.println(num + " * 5 = " + (num * 5));
        System.out.println(num + " * 6 = " + (num * 6));
        System.out.println(num + " * 7 = " + (num * 7));
        System.out.println(num + " * 8 = " + (num * 8));
        System.out.println(num + " * 9 = " + (num * 9));
        System.out.println("==========");

        // 4단을 출력하시오.
        num = 4;
        System.out.println(num + " * 1 = " + (num * 1));
        System.out.println(num + " * 2 = " + (num * 2));
        System.out.println(num + " * 3 = " + (num * 3));
        System.out.println(num + " * 4 = " + (num * 4));
        System.out.println(num + " * 5 = " + (num * 5));
        System.out.println(num + " * 6 = " + (num * 6));
        System.out.println(num + " * 7 = " + (num * 7));
        System.out.println(num + " * 8 = " + (num * 8));
        System.out.println(num + " * 9 = " + (num * 9));
        System.out.println("==========");

        // 5단을 출력하시오.
        num = 5;
        for (int i = 1; i < 10; i++) {
            System.out.println(num + " * " + i + " = " + (num * i));
        } // end of for
        System.out.println("==========");

        // 6단을 출력하시오.
        num = 6;
        for (int i = 1; i < 10; i++) {
            System.out.println(num + " * " + i + " = " + (num * i));
        }
        System.out.println("==========");

        // 7단을 출력하시오.
        num = 7;
        for (int i = 0; i < 10; i++) {
            System.out.println(num + " * " + i + " = " + (num * i));
        }
        System.out.println("==========");

        // 8단을 출력하시오.
        num = 8;
        for (int i = 0; i < 10; i++) {
            System.out.println(num + " * " + i + " = " + (num * i));
        }
        System.out.println("==========");

        // 9단을 출력하시오.
        num = 9;
        for (int i = 0; i < 10; i++) {
            System.out.println(num + " * " + i + " = " + (num * i));
        }
        System.out.println("==========");

    } // end of main
}

 

구구단 더 간단하게

package ch04;

public class ForTest01 {
    // 메인
    public static void main(String[] args) {
        int n1;
        int n2;
        for (n2 = 2; n2 < 10; n2++) {
            for (n1 = 1; n1 < 11; n1 ++) {
                if (n1 < 10) {
                    System.out.println(n2 + " * " + n1 + " = " + (n1 * n2));
                } else {
                    System.out.println("----------------------");
                }
            } // end of for
        } // end of for

    } // 메인끝
} // 클래스끝

 

for문을 통해 숫자의 합 계산하기

package ch04;
public class ForMainTest3 {
    // entry
    public static void main(String[] args) {

        // 1~50 정수 중 짝수만 출력하시오
        // 반복문에 if문을 활용해 실행의 흐름을 제어한다.
        for (int i = 1; i < 51; i++) {
            if (i % 2 == 1) {
                // 2로 나눈 나머지 값이 0이면 짝수로 판단할 수 있다.
                System.out.print(i + " ");
            } // end of if
        } // end of for
        System.out.println();

        // 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = 55
        int sum = 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10;
        System.out.println("sum의 합" + sum);

        sum = 0;
        for (int i = 1; i < 11; i++) {
            // sum = sum + i;
            sum += i;
        }
        System.out.println("sum의 합" + sum);

    } // end of main
}

 

for문을 통해 숫자 합 구하기2

 

package ch04;
public class ForMainTest4 {
    // entry
    public static void main(String[] args) {

        // 1~100 중 홀수의 총 합을 구하시오

        int sum = 0;
        int totalSum = 0;
        for (int i = 1; i < 101; i++) {
            if (i % 2 == 1) {
                System.out.print(i + " ");
                sum += i;
            } // end of if
            if (i % 20 == 0) {
                System.out.println();
            }
            totalSum += i;
        } // end of for
        System.out.println("홀수의 합: " + sum);
        System.out.println("1~100 합: " + totalSum);
        System.out.println("==========");

        // 반복문을 사용할 때 증감삭에 꼭 1만 증가시킬 수 있는 것은 아니다.
        // 2 4 6 8 10.. 100까지 출력하고 싶다면

        for (int i = 2; i <= 100; i += 2) {
            System.out.print(i + " ");
            if ( i % 20 == 0) {
                System.out.println();
            }
        }
        System.out.println("==========");

        // 10 9 8 7 6 5 4 3 2 1 을 출력하시오

        for (int i = 10; i > 0; i--) {
            System.out.print(i + " ");
        }
        System.out.println();
        System.out.println("==========");

    } // end of main
}

 

 

for문을 사용해 좀 더 복잡한 반복문을 만들어보자

package exercise;
public class Exercise7 {
    //entry
    public static void main(String[] args) {

        // 1~100 반복하는 반복문 작성
        for (int i = 1; i < 101; i++) {
            System.out.print(i + " ");
            if (i % 50 == 0) {
                System.out.println();
            } // end of if
        } // end of for
        System.out.println("==========");

        // 1~10 홀수면 건너뛰고 짝수만 출력
        for (int n = 1; n < 11; n++) {
            if (n % 2 != 0) {
                continue;
            }
                System.out.print(n + " ");
        }// end of for
        System.out.println("은 짝수");
        System.out.println("==========");

    }//end of main
}

 

'Java' 카테고리의 다른 글

객체 이해  (2) 2025.04.14
반복문 while  (0) 2025.04.14
자료의 형 변환 - 강제형변환  (0) 2025.04.10
연산자 (= + - * / %) 의 종류와 활용  (0) 2025.04.10
명령프롬프트를 통한 자바 실행 방법  (0) 2025.04.10