Oppure

Loading
16/03/11 17:35
tomsamy93
innanzi tutto mi presento, sono tommaso!

qualcuno saprebbe dirmi cosa ha di sbagliato questo codice. grazie in anticipo!

MAIN:import java.io.*;
public class Esercizio

{public static void main(String[] args ) throws Exception
{BufferedReader input=new BufferedReader (
new InputStreamReader (System.in));

int a,b,c;
Triangolo t;

System.out.println("inserire i lati del triangolo";);
String line=input.readLine();
a=Integer.parseInt(line);
line=input.readLine();
b=Integer.parseInt(line);
line=input.readLine();
c=Integer.parseInt(line);

t=new Triangolo(a,b,c);
t.Area();
t.Perimetro();

}

}

CLASSE:import java.io.*;

public class Triangolo{
public Triangolo(int a, int b, int c);
int lato1, lato2, lato3;
int area=0;
int perimetro=0;

public void Triangolo(int a, int b, int c){
lato1=a;
lato2=b;
lato3=c;}

public void Area(Triangolo t){
area=lato1*lato2*lato3;
System.out.println("l' area del triangolo è "+area);}

public void Perimetro(Triangolo t){
perimetro=lato1+lato2+lato3;
System.out.println("il perimetro del triangolo è "+perimetro);}
}
Ultima modifica effettuata da tomsamy93 16/03/11 17:37
aaa
16/03/11 19:19
Bonny
Nella classe Esercizio va tutto bene, in triangolo non capisco perchè prima di dichiarare le var
public Triangolo(int a, int b, int c);
int lato1, lato2, lato3;
int area=0;
int perimetro=0; 


hai scritto :
public Triangolo(int a, int b, int c);
,non si può scrivere cosi è sbagliato,forse ti confondi con i prototipi di funzioni in linguaggio C; al limite scrivi
public Triangolo(){}
ma è superfluo per qst esercizio basta il costruttore che hai definito sotto

//(costruttore 2)
public void Triangolo(int a, int b, int c){
lato1=a;
lato2=b;
lato3=c;}


Poi nei metodi Area() e Perimetro() non serve che gli passi come parametro oggetti di tipo triangolo non ha senso perchè una volta istanziato un ogg di tipo triangolo,con il costruttore (2), esso contiene gia tutte le informazioni necessarie per calcolare area e perimetro ... quindi io farei cosi:
import java.io.*;

public class Triangolo{

int lato1, lato2, lato3;
int area=0;
int perimetro=0;

public void Triangolo(int a, int b, int c){
lato1=a;
lato2=b;
lato3=c;
}

public void Area(){
area=lato1*lato2*lato3;
System.out.println("l' area del triangolo è "+area);
}

public void Perimetro(){
perimetro=lato1+lato2+lato3;
System.out.println("il perimetro del triangolo è "+perimetro);
}
} 

aaa