2012-01-23 7 views
3

私は乗算表を印刷していますが、見た目が面倒です。半分のタブへの道はありますか?

1 2 3 4 5 6 7 8 9 10 11 12 
2 4 6 8 10 12 14 16 18 20 22 24 
3 6 9 12 15 18 21 24 27 30 33 36 
4 8 12 16 20 24 28 32 36 40 44 48 
5 10 15 20 25 30 35 40 45 50 55 60 
6 12 18 24 30 36 42 48 54 60 66 72 
7 14 21 28 35 42 49 56 63 70 77 84 
8 16 24 32 40 48 56 64 72 80 88 96 
9 18 27 36 45 54 63 72 81 90 99 108 
10 20 30 40 50 60 70 80 90 100 110 120 
11 22 33 44 55 66 77 88 99 110 121 132 
12 24 36 48 60 72 84 96 108 120 132 144 

iタブを押すと、データがCMDの次の行にオーバーフローします。 には、データを埋め込み、より構造的に見えるようにする、または少なくとも見た目を良くするための半分のタブがあります。

答えて

5

あなたは、各桁の文字の固定数を割り当てるためにSystem.out.printfを使用することができます。たとえば、

System.out.printf("%4d", n); 

は、4文字のフィールドに右寄せの値を表示します。

+0

完璧!我々は同様の操作を2倍と10進数で行っていました。私は同じことがこれにも適用できることを理解していませんでした。 – user1093111

0

私はあなたが何をしているかを見ています。あなたが達成しようとしていることは分かっています。しかし、1、2、3、4、5 =タブのインプライムで「スペース」を使用しない限り、タブを「半分」することはできません。代わりに、cmdプロパティに入り、ウィンドウサイズを広げることもできます。

0

あなたの番号が何文字を占めているかを確認し、番号を印刷した後にセットしたパディングスペースの数を差し引くことができます。すなわち

私は8スペースパディングを使用します。 123という数字は3文字なので、I は5スペースを埋め込みます。私はパッドなど6つのスペース

とコードは次のようになりますでしょうので、数12は2つの文字があります。

int maxPadding = 8; 
int[] listOfNumbers = {1, 11, 111, 2, 22, 222}; 

for (int number : listOfNumbers){ 

    System.out.print(number);  

    int numberOfWhitespaces = maxPadding - int.length; 

    for(int i = 0; i < numberOfWhitespaces; i++){ 
     System.out.print(" "); 
    } 

    System.out.println(); 
} 
+0

ok yeah、makes sense – user1093111

+0

ありがとうございました! – user1093111

関連する問題