我必须创建一个代码,给定多边形名称及其顶点坐标,打印周长。即使我更改输入值,它也总是打印 5.0 。我究竟做错了什么?我尝试使用 for 循环并打印三角形每一边的长度,但结果仍然是 5.0 并且只打印了一次。现在我尝试在每一步打印递归和但没有结果public static void main(String[] args) { int i; double result = 0; double x1 = Double.valueOf(args[1]); double y1 = Double.valueOf(args[2]); Punto p1 = new Punto(x1, y1); double x2 = Double.valueOf(args[3]); double y2 = Double.valueOf(args[4]); Punto p2 = new Punto(x2, y2); double x3 = Double.valueOf(args[5]); double y3 = Double.valueOf(args[6]); Punto p3 = new Punto(x3, y3); Punto[] punti = {p1, p2, p3}; Poligono A = new Poligono(args[0], punti); for (i = 0; i < punti.length - 1; i++) { double xa = Punto.getX(punti[i++]); double xb = Punto.getX(punti[i]); double ya = Punto.getY(punti[i++]); double yb = Punto.getY(punti[i]); result = result + Math.sqrt(Math.pow(Math.abs(xa - xb), 2) + Math.pow(Math.abs(ya - yb), 2)); System.out.println(result); } }(Punto 的意思是点)正确的答案是 12,但它总是打印 5 并且只打印一次
添加回答
举报
0/150
提交
取消