문제
*******
*****
***
*
순으로 나오는 프로그램 
// 1. 절차 나누기
// 2. 하드코딩
// 3. 공통 모듈 만들기
// 4. 불필요한것 반복문으로 만들기
// 순으로 연습!1. 하드 코딩
public class Prc02 {
    public static void main(String[] args) {
        // 1. 별 7
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.println();
        
        // 2. 별 5
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.println();
        
        // 3. 별 3
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.println();
        
        // 4. 별 1
        System.out.print("*");
        System.out.println();
    }
}
2. 하드코딩 후 패턴 확인하여 반복 되는 곳 줄이기
public class Prc02 {
    public static void main(String[] args) {
        // 1. 별 7
        for (int i = 0; i <7; i++) {
            System.out.print("*");
        }
        System.out.println();
        // 2. 별 5
        for (int i = 0; i <5; i++) {
            System.out.print("*");
        }
        System.out.println();
        // 3. 별 3
        for (int i = 0; i <3; i++) {
            System.out.print("*");
        }
        System.out.println();
        
        // 4. 별 1
        for (int i = 0; i <1; i++) {
            System.out.print("*");
        }
        System.out.println();
    }
}3. 변수 찾기
public class Prc02 {
    public static void main(String[] args) {
        int c = 7;
        // 1. 별 7
        for (int i = 0; i < c; i++) {
            System.out.print("*");
        }
        System.out.println();
        // 2. 별 5
        c = c -2;
        for (int i = 0; i < c; i++) {
            System.out.print("*");
        }
        System.out.println();
        // 3. 별 3
        c = c -2;
        for (int i = 0; i < c; i++) {
            System.out.print("*");
        }
        System.out.println();
        // 4. 별 1
        c = c -2;
        for (int i = 0; i < c; i++) {
            System.out.print("*");
        }
        System.out.println();
    }
}
4. 모든 코드를 똑같이 만들기 (공통 모듈로 만들기)
public class Prc02 {
    public static void main(String[] args) {
        int c = 9;
        // 1. 별 7
        c = c - 2;
        for (int i = 0; i < c; i++) {
            System.out.print("*");
        }
        System.out.println();
        // 2. 별 5
        c = c - 2;
        for (int i = 0; i < c; i++) {
            System.out.print("*");
        }
        System.out.println();
        // 3. 별 3
        c = c - 2;
        for (int i = 0; i < c; i++) {
            System.out.print("*");
        }
        System.out.println();
        // 4. 별 1
        c = c - 2;
        for (int i = 0; i < c; i++) {
            System.out.print("*");
        }
        System.out.println();
    }
}
5. 공통 모듈 지우고 반복문 쓰기
public class Prc02 {
    public static void main(String[] args) {
        
        int c = 9;
        // 1. 별 7
        for (int j = 0; j < 4; j++) {
            c = c - 2;
            for (int i = 0; i < c; i++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}
Share article