Allora...
1)
codice:
//Sintassi errata
System.out.printf("perimetro=%1.2f\n",perimetro);
System.out.printf("area=%1.2f\n",Math.sqrt((perimetro/2)*(perimetro/2-d01)*(perimetro/2-d02)*(perimetro/2-d12)));
Questa cosa qua in java non esiste(ti confondi con C).
codice:
//Sintassi corretta
System.out.println("perimetro="+perimetro);
System.out.println("area="+Math.sqrt((perimetro/2)*(perimetro/2-d01)*(perimetro/2-d02)*(perimetro/2-d12)));
2)
La classe Punto dev'essere public e salvata in una classe a se, non come inner class, altrimenti non e' accessibile.
codice:
//DA SALVARE COME Punto.java
package poo.utilita;
public class Punto{
private double x,y;
public Punto (double valX, double valY){
x= valX; y=valY;
}
public double getX(){return x;}
public double getY(){return y;}
public double distanza (Punto p){
return Math.sqrt((p.x-x)*(p.x-x)+(p.y-y)*(p.y-y));
}
public String toString (){
return "<"+x+","+y+">";
}}
3)si scrive length e non lenght
4)Il costruttore di Punto non vuole un oggetto di tipo punto ma 2 numeri quindi, a seconda del fatto che tu voglia un nuovo oggetto o usare lo stesso per entrambi gli array
codice:
this.v[i]=new Punto (v[i].getX, v[i].getY);
oppure