Contents
1. 별 피라미드1. 별 피라미드
* ** *** **** *****
- 절차를 나눈다.
- 하드코딩 한다. (노가다) (패턴, 변수, 샘플링) (기븐데이터(값을 정해서 주어짐)로 절차 생략)
- 공통모듈을 만든다. (동일한 부분)
- 불필요한 반복을 반복문으로 만든다.
- 리팩토링한다. (이름변경, 코드정리)
1. 절차를 나눈다.
- 별 하나찍고 줄바꿈
- 별 두개찍고 줄바꿈
- 별 세개찍고 줄바꿈
- 별 네개찍고 줄바꿈
- 별 다섯개찍고 줄바꿈
2. 하드코딩 한다.
System.out.print("*");
System.out.println();
System.out.print("*");
System.out.print("*");
System.out.println();
System.out.print("*");
System.out.print("*");
System.out.print("*");
System.out.println();
3. 반복되는 부분을 모듈로 만든다.
for (int i = 0; i < 1; i++) {
System.out.print("*");
}
System.out.println();
for (int i = 0; i < 2; i++) {
System.out.print("*");
}
System.out.println();
for (int i = 0; i < 3; i++) {
System.out.print("*");
}
System.out.println();
int n = 0;
n++;
for (int i = 0; i < n; i++) {
System.out.println("*");
}
System.out.println();
n++;
for (int i = 0; i < n; i++) {
System.out.println("*");
}
System.out.println();
n++;
for (int i = 0; i < n; i++) {
System.out.println("*");
}
System.out.println();
4. 불필요한 부분 반복문으로 만든다.
int m = 0;
for (int line = 0; line < 5; line++) {
m++;
for (int count = 0; count < m; count++) {
System.out.print("*");
}
System.out.println();
}
5. 전체코드
public class Prc01 {
public static void main(String[] args) {
// 절차를 나눈다.
// 1. 별 하나찍고 줄바꿈
System.out.print("*");
System.out.println();
// 2. 별 두개찍고 줄바꿈
System.out.print("*");
System.out.print("*");
System.out.println();
// 3. 별 세개찍고 줄바꿈
System.out.print("*");
System.out.print("*");
System.out.print("*");
System.out.println();
//----------------------------------------------
// 별 찍는 부분이 반복되니 모듈로 만든다.
// 1. 별 한개찍고 줄바꿈
for (int i = 0; i < 1; i++) {
System.out.print("*");
}
System.out.println();
// 2. 별 두개찍고 줄바꿈
for (int i = 0; i < 2; i++) {
System.out.print("*");
}
System.out.println();
// 3. 별 세개찍고 줄바꿈
for (int i = 0; i < 3; i++) {
System.out.print("*");
}
System.out.println();
//-----------------------------------------------
// i의 최대값이 변경된다. -> 변수로 만든다
// 코드를 동일한 패턴으로 만든다.
int n = 0;
n++;
for (int i = 0; i < n; i++) {
System.out.println("*");
}
System.out.println();
n++;
for (int i = 0; i < n; i++) {
System.out.println("*");
}
System.out.println();
n++;
for (int i = 0; i < n; i++) {
System.out.println("*");
}
System.out.println();
//----------------------------------------------------
// 반복되는 패턴을 모듈로 만들어 반복문을 만든다.
// 변수 이름을 이해하기 쉽게 변경한다.
int m = 0;
for (int line = 0; line < 5; line++) {
m++;
for (int count = 0; count < m; count++) {
System.out.print("*");
}
System.out.println();
}
}
}

Share article