ecco il sorgente file:
ecco il risultato digitando qualsiasi numero:codice:import java.io.*; import pack.*; class Area_by_Gauss { private int numero_vertici; private Float area; final String descrizione = "Con questo piccolo programma si sarà in grado di calcolare l'area di un qualsiasi poligono avendo tutte le coordinate dei suoi punti rispetto a un generico piano cartesiano. NB= L'unità di misura del risultato sarà come quella inserita e ovviamente elevata alla seconda."; public static void main(String args[]){ Area_by_Gauss risultato = new Area_by_Gauss(); } public Area_by_Gauss(){ System.out.println(this.descrizione); System.out.println(); System.out.println("Formula: 1/2 * sommatoria[Ni * (Xi+1 - Xi-1])"); System.out.println("Inserisci il numero dei vertici della figura"); try { setNVertici(); } catch (IOException e) { System.out.println(e); } Poligono figura = new Poligono(this.numero_vertici); } public void setNVertici() throws IOException { int n_caratteri_x_n_vertici = 10; byte[] b = new byte[n_caratteri_x_n_vertici]; char[] numeri = new char[n_caratteri_x_n_vertici]; BufferedInputStream buffer = new BufferedInputStream(System.in); buffer.read(b); System.out.println(); int i = 0; while( i < n_caratteri_x_n_vertici) { numeri[i] = (char)b[i]; i++; } this.numero_vertici = Integer.parseInt(String.valueOf(numeri)); System.out.println("Il poligono è formato da " + this.numero_vertici +" vertici"); } }
come devo modificare il codice??Con questo piccolo programma si sarÓ in grado di calcolare l'area di un qualsias
i poligono avendo tutte le coordinate dei suoi punti rispetto a un generico pian
o cartesiano. NB= L'unitÓ di misura del risultato sarÓ come quella inserita e ov
viamente elevata alla seconda.
Formula: 1/2 * sommatoria[Ni * (Xi+1 - Xi-1])
Inserisci il numero dei vertici della figura
3
Exception in thread "main" java.lang.NumberFormatException: For input string: "3
"
at java.lang.NumberFormatException.forInputString(Unk nown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at Area_by_Gauss.setNVertici(Area_by_Gauss.java:46)
at Area_by_Gauss.<init>(Area_by_Gauss.java:22)
at Area_by_Gauss.main(Area_by_Gauss.java:12)