2014-09-27 297 views
-2

我必须创建一个Java程序,我要求用户输入三角形的三个字母名称。然后我要求三个坐标(它们是刚输入的三个字母)。我如何分开他们输入的三个字母?这是我最终的输出应该是什么样子。这是我的教授给我们的例子。有人可以帮我解决这个问题。我知道如何进行计算,但我不知道如何将用户给出的名称与坐标分开。Java三角形计算器

Enter the three letter name of triangle: jqc 
Enter coordinates of vertex J: .1 .1 
Enter coordinates of vertex Q: 2.2 .1 
Enter coordinates of vertex C: 1.15 .7 

--- Side lengths --- 
JQ: 2.1 
QC: 1.2093386622447826 
CJ: 1.2093386622447821 
--- Sorted --- 
1.2093386622447821, 1.2093386622447828, 2.1 

--- Other measures --- 
Perimeter = 4.518677324489565 
Area = 0.6300000000000003 
Center = (1.1500000000000001, 0.3) 

--- Triangle types --- 
Right triangle: false 
Equilateral triangle: false 
Isosceles triangle: true 
Scalene triangle: false 
+0

方式一:分割线输入与'String.split(...)'使用一个空白正则表达式可以工作的分割:'myString.split(” \\ s +“);'这将返回一个数组字符串的数组,您必须使用'Double.parseDouble(...)'进行解析。 – 2014-09-27 21:22:23

+0

好吧,我得到的一切真的只是不把字母分成单独的点。我了解除第一部分外的其他所有内容。我已经输入了我刚刚在开始时忘记了关键点的其他代码。 – 2014-09-27 21:25:50

+0

这是您的家庭作业,所以当您在家时:开始阅读您的Java书籍或Java文档,然后在您了解java如何开始工作(代码)后, – Alboz 2014-09-27 21:27:50

回答

1

如何分开他们在键入三个字母?

您可以使用String.charAt来查找给定索引处的字符。

例如,

String example = "string"; // example.charAt(2) would be r

然后,你可以参加的前两个字符(以获得第一面的名称),并做了剩下的双方是相同的。

0

这是另一种方式:

public static void main(String[] args) {  
    System.out.println("Enter the three letter name of triangle:"); 
    Scanner in = new Scanner(System.in); 
    String threeName = in.nextLine(); 
    String firstName = threeName.trim().substring(0, 1); 
    String secondName = threeName.trim().substring(1, 2); 
    String lastName = threeName.trim().substring(2, 3); 
    System.out.println(firstName); 
    System.out.println(secondName); 
    System.out.println(lastName);  
    System.out.println("Enter coordinates of vertex " + firstName.toUpperCase()); 

    //And continue this code 


}