2016-11-10 82 views
-2

我有一個任務Q和我已完成大部分工作,但需要輸出更整齊。我需要讓用戶選擇3-10之間的行數和5-10之間的列數。輸出格式Java

  1. 但輸出需要間隔均勻的數字,但我不能得到它的工作!!?
  2. 我需要驗證用戶輸入...怎麼樣?

示例代碼:

Scanner s = new Scanner(System.in); 

System.out.print("Please enter number of rows between the range of 3 to 10: "); 

int count1 = s.nextInt(); 
System.out.print("Please enter number of Columns between the range of 5 to 10: "); 
int count2 = s.nextInt(); 

for (int i = 1; i <= count1; i++) { 
    for (int j = 1; j <= count2; j++) { 

     System.out.print((i * j) + " "); 
    } 
    System.out.println(""); 
} 

} 
} 

我重視圖像顯示輸出,我需要什麼。 enter image description here

+1

這是一些有趣的JavaScript。 –

+0

打印時,您可以使用'\ t'作爲製表符而不是空格。 –

+0

此外,驗證用戶輸入只是檢查輸入是否在3和10之間,如果不是,顯示錯誤消息,即「該號碼無效。請輸入一個有效的號碼'並再次詢問。提示,使用循環。 –

回答

2

我寧願留下這個作爲評論,但耶的信譽不到50。看看下面的鏈接,他們應該爲你提供一些見解:

類似計算器的問題

Java output formatting for Strings

和Java文檔

http://docs.oracle.com/javase/6/docs/api/java/util/Formatter.html#syntax

希望他們幫助你。

編輯:

在回答你的第二個問題,建議意見的循環將是一個良好的開端。類似於以下內容:

System.out.print("Please enter number of rows between the range of 3 to 10: "); 
int count1 = s.nextInt(); 

while (count1 < 3 || count1 > 10) { 
    System.out.print("That is not a valid input. Try again: "); 
    count1 = s.nextInt(); 
} 

而且當然對於count2也是如此。您也可以將其作爲一個單獨的函數,並分別將count1count2傳遞給它以減少重複的代碼。這裏的循環條件count1 < 3 || count1 > 10將繼續提示用戶輸入,直到它在可接受的範圍內。