[문제]

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


[문제 풀이 실패 ] 

package programs;


public class PrintTriangle {


public String printTriangle(int num){


String star= "*";

String result = "";

int i = 0;

while (i < num) {

int j = 0;

while (j < i+1) {

   

j = j + 1;

result = result+star;

}

i = i + 1;

result =result+ "\n";

}

return result;

}

public static void main(String[] args) {

PrintTriangle pt = new PrintTriangle();

System.out.println( pt.printTriangle(5) );

}

}




리턴의 개념을 제대로 이해하지 못해서, 값을 리턴해내지 못함, 

다른 접근 방법과 리턴에 대한 개념에 대해 다시 공부할 필요가 있음 

 





[다른사람 문제풀이 ]


package programs;


public class PrintTriangle {


public String printTriangle(int num){

String stars= "*";

String result = "";

for(int i=0; i<num; ++i){

//result 에 저장 

          result += stars+"\n";

          stars += "*";

      }

return result;

}


// 아래는 테스트로 출력해 보기 위한 코드입니다.

public static void main(String[] args) {

PrintTriangle pt = new PrintTriangle();

System.out.println(pt.printTriangle(5));

}

}

// 아래는 테스트로 출력해 보기 위한 코드입니다.



[다른사람 풀이 2 ]

public class PrintTriangle {
  public String printTriangle(int num){
    String result = "";
    for(int i=1; i<=num; i++){
      String star = new String(new char[i]).replace("\0", "*");
      result += star + "\n";
    }
    return result;
  }

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


  String star = new String(new char[i]).replace("\0", "*");
위의 구문에 대한 공부가 필요함 
public class PrintTriangle {
    public String printTriangle(int num){
    String result="";

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

        return result;      
    }

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


'알고리즘' 카테고리의 다른 글

서울에서김서방찾기  (0) 2018.02.22
수박수박수박수박수박수?  (0) 2018.02.22
가운데 글자 가져오기  (0) 2018.01.23
역삼각형 출력하기  (0) 2018.01.14
약수의 모든 합을 구하시오.  (0) 2018.01.14

+ Recent posts