Level1 삼각형 출력하기

문제

printTriangle 메소드는 양의 정수 num을 매개변수로 입력받습니다.
다음을 참고해 *(별)로 높이가 num인 삼각형을 문자열로 리턴하는 printTriangle 메소드를 완성하세요
printTriangle이 return하는 String은 개행문자(‘\n’)로 끝나야 합니다.

높이가 3일때

1
2
3
4
> *
> **
> ***
>

많이 찍어봤던 별 문제 처럼 그냥 for문 2개돌려서 정답을 제출했다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public class PrintTriangle {
public String printTriangle(int num){

String stars = "";

for (int i=1; i<=num; i++) {
for (int j=1; j<=i; j++) {
stars += "*";
}
stars += "\n";
}

return stars;
}

// 아래는 테스트로 출력해 보기 위한 코드입니다.
public static void main(String[] args) {
PrintTriangle pt = new PrintTriangle();
System.out.println( pt.printTriangle(3) );
}
}

다른 사람의 풀이

사람들의 댓글이 많이 달려있는 코드이다. 보통 사람들 다 for문 2개로 해결했을텐데 for문 1개로 해결하였다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class PrintTriangle {
public String printTriangle(int num){
String result = "";
String stars = "*";
for(int i=0; i<num; ++i){
result += stars+"\n";
stars += "*";
}
return result;
}

// 아래는 테스트로 출력해 보기 위한 코드입니다.
public static void main(String[] args) {
PrintTriangle pt = new PrintTriangle();
System.out.println( pt.printTriangle(3) );
}
}
Share