segunda-feira, 26 de outubro de 2015

Distancia Pontos

/* PARTE 1:

Implementar uma classe de objetos JAVA, chamada Ponto, que represente um ponto (x,y) no R2, onde x é a abscissa e y é a ordenada, ambos valores INTEIROS, e adicione os seguintes métodos:
(i) Ponto: construtor da classe sem parâmetros;
(ii) Ponto: construtor da classe através dos parâmetros x e y;
(iii) getX: devolve a abscissa do ponto;
(iv) getY: devolve a ordenada do ponto;
(v) setX: atribui novo valor para a abscissa; e
(vi) setY: atribui novo valor para a ordenada.

PARTE 2:

Implementar outra classe de objetos JAVA, chamada DistanciaPontos, que tenha dois objetos da classe Ponto e os seguintes métodos:
(i) DistanciaPontos: construtor da classe que recebe os dois objetos da classe Ponto;
(ii) distância: retorna a distância entre os dois pontos.

PARTE 3:

Implementar outra classe de objetos JAVA que tenha somente o método main, público e estático, que leia uma quantidade indeterminada de quatro inteiros. Para cada conjunto de (quatro) valores lidos: (a) crie dois objetos da classe Ponto; (b) crie um objeto da classe DistanciaPontos usando os dois objetos da classe Ponto; (c) chame o método distancia para calcular e imprimir a distância entre os dois pontos. Considere que a distância é ARREDONDADA para duas casas decimais. O último valor, que não deverá entrar nos cálculos, deve ter valor igual a -1 (um negativo).
Dicas:
DICAS
ENTRADA
4 5 1 1
1 2 3 4
-1

SAÍDA
5.00
2.83
*/
import java.util.Scanner;

class Ponto{
private int x,y;

Ponto(){
setX(0);
setY(0);
}
Ponto(int x,int y){
setX(x);
setY(y);
}

public int getX() { return x;}
public void setX(int x) {this.x = x;}
public int getY() {return y;}
public void setY(int y) {this.y = y;}

}
class DistanciaPontos{
         Ponto a = new Ponto();
         Ponto b = new Ponto();
DistanciaPontos(Ponto d,Ponto e){
                 a=d;
                 b=e;
}
public double distancia(){
double cdist=0;
cdist = Math.sqrt( Math.pow( (a.getX() - a.getY()),2 )+ Math.pow( (b.getX() - b.getY()),2 ) );
return cdist;
  }
}
public class Mein {
public static void main(String[] args) {
Scanner ler = new Scanner(System.in);
double resultado=0;

int x1=0,x2=0,y1=0,y2=0;

  x1 = ler.nextInt();
if(x1!=-1)
  x2 = ler.nextInt();
if(x2!=-1)
  y1 = ler.nextInt();
if(y1!=-1)
  y2 = ler.nextInt();

while(x1!=-1 && x2!=-1 && y1!=-1 && y2!=-1){

Ponto a = new Ponto(x1,y1);
Ponto b = new Ponto(x2,y2);

            DistanciaPontos src = new DistanciaPontos(a,b);
            resultado = src.distancia();
System.out.printf("%.2f\n",resultado);

x1=0;x2=0;y1=0;y2=0;
  x1 = ler.nextInt();
if(x1!=-1)
  x2 = ler.nextInt();
else
   break;  
if(x2!=-1)
  y1 = ler.nextInt();
   else
  break;  
if(y1!=-1)
  y2 = ler.nextInt();
else
  break;
}


}//FIM DO MEIN

}//FIM DO CLASS

Nenhum comentário:

Postar um comentário