2013-04-06 2 views
0

문자 입력 및 지정된 열과 행이있는 사각형을 작성합니다. 중간에 공백이 있습니다. 문자열의 표준 입력 INT의 R, INT C를 사용Java 행 및 열 만들기

private static void printstuff(String s, int r, int c) { 

    colums(s, c); 
    rows(s, c, r); 
    colums(s, c); 

} 

// straight columns 

private static void colums(String cs, int cc) { 
    for (int i = 1; i <= cc; i++) { 
     System.out.print(cs); 
    } 

} 

이 "" "" "" "X

를"즉 X 을 가진 문자열 CONCAT하는 "원하는 공백 또는"작성
private static String whitespace(int wc) { 
    String ws = " "; 
    for (int i = 1; i <= wc - 3; i++) { 
     ws += " "; 
    } 
    return ws; 
} 

공백으로 직사각형을 만듭니다.

// downwards building 

private static void rows(String rs, int rc, int rr) { 
    String ws = whitespace(rc); 
    for (int i = 1; i <= rr - 1; i++) { 
     System.out.println(rs + ws + rs); 

     // put strings together 

    } 

} 

} 직사각형을 구성하는 공백 및 문자 행. 말할 필요도없이 실패했습니다.

샘플 출력 :

XXXX X 
X X 
xxxx 

원하는 출력 :

xxxx 
x x 
xxxx  
+0

질문이 무엇인지 확실하지 ... 당신은 체크 아웃해야합니다 [인 String.format()] (HTTP : //docs.oracle.com/javase/7/docs/api/java/lang/String.html). 많은 문자열 패딩 옵션을 제공합니다. – jahroy

+0

건배! 죄송합니다. 상단 칸에 공백이 삽입되어야합니다. –

+0

질문 편집을 돕고 있습니다 ... 각 줄을 4 칸으로 시작하면 공백이 보존됩니다. 공백을 나타 내기 위해 점들을 사용할 이유가 없습니다! – jahroy

답변

0

아래 하나의 빠른 해결책 .. 건배

public class Main { 

public static void main(String[] args) { 
    String s = "X"; 
    int totalColumns = 4; 
    int totalRow = 3; 

    colums(s, totalColumns); 
    rows(s, totalColumns, totalRow); 
    colums(s, totalColumns); 


} 

private static void colums(String cs, int cc) { 
    for (int i = 0; i < cc; i++) { 
     System.out.print(cs); 
    } 

} 

private static String whitespace(int tc) { 
    String ws = " "; 
    for (int i = 1; i < tc - 2; i++) { 
     ws += " "; 
    } 
    return ws; 
} 

private static void rows(String rs, int tc, int tr) { 
    System.out.println(); 
    for (int i = 0; i < tr - 2 ; i++) { 
     System.out.println(rs + whitespace(tc) + rs); 
    } 
} 

}

+0

위대한! 정말 고맙습니다! –

0

임 확실하지 당신이 원하는하지만 이것은에서 System.out.println을 ("") 던져; 후 colums 루프

+0

그래,하지만 그게 공백을 줄 것이다 반면에 x x (공백 inbetween 문자열) –

+0

난 그냥 이것으로 그것을 테스트하고 작동합니다. 그것을 밖으로 시도하십시오. (int i = 1; i <= cc; i ++) { \t {int c = int; \t} \t에서 System.out.println (""); \t} – Parnit