Todo lo necesario para sobrevivir en la carrera de Ing. en Informática, Vespertino

18 jun 2007

Puntos, circulos y otras confusiones

Clase del 18 de julio



public class Punto {
//Atributos
private double x=0.0;
private double y;

//Constructores
public Punto(){
x=2.2;
y=0.0;
} // punto

public Punto(double param1,double param2) {
x=param1;
y=param2;
} // punto

//Getters
public double getX(){
return x;
} // getX

public double getY(){
return y;
} // getY

//Resto de metodos
public double calcularDistanciaDesde(Punto param) {
double cateto1 = x - param.getX();
double cateto2 = y - param.getY();
double hipotenusa=Math.sqrt(cateto1*cateto1+cateto2*cateto2);
return hipotenusa;
} // fin de calcularDistanciaDesde
} // fin de clase






public class Circulo {
//Atributos
private Punto centro=null;
private double radio=0.0;

//Constructores
public Circulo()
{
centro=new Punto();
radio=3.1;
} // constructor

public Circulo(Punto param1,double param2){
centro=param1;
radio=param2;
} // constructor


public Circulo(double param1,double param2,double param3){
centro=new Punto(param1,param2);
radio=param3;
} // constructor

//Getters
public Punto getCentro(){
return centro;
}

public double getRadio(){
return radio;
}


//Resto de metodos
public double calcularArea(){
return Math.PI*radio*radio;
}

public double calcularPerimetro(){
return 2*Math.PI*radio;
}

public double calcularDistanciaDesde(Punto param)
{
return centro.calcularDistanciaDesde(param);
}

} // fin de clase





public class Triangulo {
//Atributos
private Punto p1,p2;
private Punto p3=null;

//Constructores
public Triangulo(){
p1=new Punto();
p2=new Punto(1.2,10.7);
p3=new Punto(5.5,5.5);
} // constructor

public Triangulo(Punto param1,Punto param2,Punto param3){
p1=param1;
p2=param2;
p3=param3;
} // constructor

public Triangulo(double x1,double y1,double x2,double y2,double x3,double y3){
p1=new Punto(x1,y1);
p2=new Punto(x2,y2);
p3=new Punto(x3,y3);
} // constructor

//Getters
public Punto getP1(){
return p1;
}

public Punto getP2(){
return p2;
}

public Punto getP3(){
return p3;
}

//Resto de metodos
public double calcularArea(){
double base=p1.calcularDistanciaDesde(p2);
double altura=p1.calcularDistanciaDesde(p3);
return base*altura/2;
}

public double calcularPerimetro()
{
double lado1=p1.calcularDistanciaDesde(p2);
double lado2=p2.calcularDistanciaDesde(p3);
double lado3=p3.calcularDistanciaDesde(p1);
return lado1+lado2+lado3;
}

public double calcularDistanciaDesde(Punto param)
{
return p1.calcularDistanciaDesde(param);
}
} // Fin de clase



public class Practica5a {

public static void main(String[] args) {

Punto a= new Punto();
Punto b= new Punto(1.1,42.3);
double distancia=a.calcularDistanciaDesde(b);
System.out.println("La distancia es:" + distancia);

Circulo c= new Circulo(a,5.0);
System.out.println("El area es:" + c.calcularArea());
System.out.println("El perimetro es:" + c.calcularPerimetro());
System.out.println("La distancia es:" + b.calcularDistanciaDesde(c.getCentro()));

Triangulo t= new Triangulo(a,b,new Punto(7.3,1.9));
System.out.println("El area es:" + t.calcularArea());
System.out.println("El perimetro es:" + t.calcularPerimetro());
System.out.println("La distancia es:" + t.calcularDistanciaDesde(new Punto(8.0,9.0)));
}
}



1 comentario:

Cainista dijo...

Anonima.. es una pena que no sepas, que cuando posteas queda un registro de tu IP.. no puedes chatear conmigo e insultarme al mismo tiempo.