以下のようなメソッドを書いています。
0からseqCenter(0以上)まで順番に出力し、また折り返して0まで戻る
length(奇数の整数)で定められた長さになるように、足りない分は左右にスペースとして配置する
例
printNumberLine( 0, 5 ) gives " 0 " (two spaces, followed by a 0, and then followed by two spaces)
printNumberLine( 2, 7 ) gives " 01210 " (one space, followed by 01210, and then followed by one space)
問題は最後にのみ改行したいのですが、printNumberLine(0,1)の場合もスペースは入れずに改行だけしたいです(0¶)。以下のコードをどう改良すれば良いか、また初心者なので効率よくできる方法があればそれも伺いたいです。よろしくお願いいたします。
Java
1public static void printNumberLine(int seqCenter, int length) { 2int i; 3int j; 4int h1; 5int h2; 6int numOfSpaces = (length - (2 * (seqCenter) + 1))/2; 7 8for (h1 = 1; h1 <= numOfSpaces; h1++){ 9IO.output(" "); 10} 11 12for (i = 0; i <= seqCenter; i++){ 13IO.output(i); 14} 15 16for (j = seqCenter - 1; j>=0; j--){ 17IO.output(j); 18} 19 20for (h2 = 1; h2 < numOfSpaces; h2++){ 21IO.output(" "); 22} 23 24if (seqCenter != 0)IO.outputln(" "); 25//I wanted to excute this just before getting out of the for loop 26 27} 28
