2016-11-10 88 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将继续提示用户输入,直到它在可接受的范围内。