삼각형출력하기
xprintTriangle 메소드는 양의 정수 num을 매개변수로 입력받습니다.
다음을 참고해 *(별)로 높이가 num인 삼각형을 문자열로 리턴하는 printTriangle 메소드를 완성하세요
printTriangle이 return하는 String은 개행문자('\n')로 끝나야 합니다.
높이가 3일때
*
**
***
높이가 5일때
*
**
***
****
*****
이건 정올 문제 풀면서 별삼각형 만들기를 했었기 때문에 쉽게 풀었다.
그냥 행이 커질때마다 별 출력하고 개행해주면 된다.
xxxxxxxxxx
public class PrintTriangle {
public String printTriangle(int num){
String answer = "";
for (int i = 1; i <= num; i++) {
for (int j = 0; j < i; j++)
answer += "*";
answer += "\n";
}
return answer;
}
// 아래는 테스트로 출력해 보기 위한 코드입니다.
public static void main(String[] args) {
PrintTriangle pt = new PrintTriangle();
System.out.println( pt.printTriangle(5) );
}
}
근데, 이렇게 하면 굳이 for문을 이중으로 돌릴 필요가 없다.
별을 따로 변수로 저장해서 저렇게 같이 증가시킬 생각은 안해봤는데, for문이 하나 더 줄어드니까 더 깔끔하고 예뻐보인다.
세상에는 참 똑똑한 사람들이 많아.. 배워가야지..!
x
public class PrintTriangle {
public String printTriangle(int num){
String answer = "";
String star = "*";
for (int i = 1; i <= num; i++) {
answer += star + "\n";
star += "*";
}
return answer;
}
// 아래는 테스트로 출력해 보기 위한 코드입니다.
public static void main(String[] args) {
PrintTriangle pt = new PrintTriangle();
System.out.println( pt.printTriangle(5) );
}
}
'공부 > algorithm' 카테고리의 다른 글
[programmers] 행렬의 덧셈 (0) | 2018.05.21 |
---|---|
[programmers] 문자열 내림차순으로 배치하기 (0) | 2018.05.21 |
[programmers] 가운데 글자 가져오기 (0) | 2018.05.21 |
[programmers] 약수의 합 (0) | 2018.05.21 |
[programmers] 스트링을 숫자로 바꾸기 (0) | 2018.05.21 |
댓글