Sabtu, 06 November 2010

Tutorial Java part -3

class Point{
private int x;
private int y;

Point (int a, int b){
x = a;
y = b;}

Point(){
x = 0;
y = 0;}
public Point(Point P){
x = P.x;
y = P.y;}
public void setAbsis (int a){
x = a;}
public void setOrdinat (int b){
y = b;}
int getAbsis(){
return x;}
int getOrdinat(){
return y;}
public void tulisPoint(){
System.out.println("("+ x + "," + y +")");}
public Point plus(Point P1, Point P2){
this.x = P1.x + P2.x;
this.y = P1.y + P2.y;
return this;
}

public Point minus(Point P1, Point P2){
this.x = P1.x - P2.x;
this.y = P1.y - P2.y;
return this;
}
public Point dotProduct(Point P1, Point P2){
this.x = P1.x * P2.x;
this.y = P1.y * P2.y;
return this;
}
public Point crossProduct(Point P1, Point P2){
this.x = P1.x * P2.y;
this.y = P1.y * P2.x;
return this;
}
boolean EQ (Point P1, Point P2){
return((P1.x == P2.x) && (P1.y == P2.y));
}

boolean NEQ (Point P1, Point P2){
return((P1.x != P2.x) &&(P1.y != P2.y));}
boolean LT (Point P1, Point P2){
return((P1.x < P2.x) &&(P1.y < P2.y));}
boolean GT (Point P1, Point P2){
return((P1.x > P2.x) && (P1.y > P2.y));
}
boolean isOrigin (Point P){
return((P.x == 0) && (P.y == 0));}
boolean isOnSbX (Point P){
return(P.y == 0);}
boolean isOnSbY (Point P){
return(P.x == 0);}
int kuadran (Point P){
if (!isOrigin(P) && (!isOnSbX(P)) && (!isOnSbY(P))){
    if((P.x > 0) && (P.y > 0)){return 1;}
    else if((P.x > 0) && (P.y < 0)) {return 2;}
    else if((P.x < 0) && (P.y < 0)){return 3;}
    else {return 4;}
} else {return -999;}
}
public Point nextX (Point P){
this.x = P.x + 1;
this.y = P.y;
return this;}
Point nextY (Point P){
this.x = P.x;
this.y = P.y + 1;
return this;}
Point plusDelta (int deltaX, int DeltaY){
this.x = x + deltaX;
this.y = y + DeltaY;
return this;}

Point mirrorOf (Point P, boolean SbX, boolean SbY){
Point temp = new Point();
if(SbX && !SbY){
temp.x = -1 * P.x;
temp.y = P.y;}
else if(!SbX && SbY){
temp.x = P.x;
temp.y = -1 * P.y;}
else if(SbX && SbY){
temp.x = -1 * P.x;
temp.y = -1 * P.y;}
else{
temp.x = P.x;
temp.y = P.y;}

return temp;
}
float jarak0 (Point P){
int pangkat2x,pangkat2y,result;
pangkat2x = (P.x) * (P.x);
pangkat2y = (P.y) * (P.y);
result = pangkat2x + pangkat2y;
float a = (float)Math.sqrt(result);
return a;}

Point hslGeser (Point P, int Deltax, int deltaY){
Point temp = new Point();
temp.x = P.x + Deltax;
temp.y = P.y +deltaY;

return temp;}

void  geserKeSbX (Point P){
P.x = 0;}

void geserKeSbY (Point P){
P.y = 0;}}


/*class driver*/


class PointTestDrive{
public static void main (String[] args){


Point A = new Point();
Point B = new Point (1,3);
Point C = new Point (7,9);

A.tulisPoint();
A.plus(B,C);
A.tulisPoint();
A.minus(B,C);
A.tulisPoint();
A.dotProduct(B,C);
A.tulisPoint();
A.crossProduct(B,C);
A.tulisPoint();
System.out.println("Apakah B dan C sama" + " " + A.EQ(B,C) );
System.out.println("Apakah B dan C sama" + " " + A.NEQ(B,C) );
System.out.println("Apakah B dan C sama" + " " + A.LT(B,C) );
System.out.println("Apakah B dan C sama" + " " + A.GT(B,C) );
System.out.println("Apakah B dan C sama" + " " + A.isOrigin(B) );
System.out.println("Apakah B dan C sama" + " " + A.isOnSbX(C) );
System.out.println("Apakah B dan C sama" + " " + A.isOnSbY(B) );
System.out.println("Apakah B dan C sama" + " " + A.kuadran(C) );
A.nextX(C);
A.tulisPoint();
A.nextY(B);
A.tulisPoint();

B.plusDelta(2,8);
B.tulisPoint();
B=A.mirrorOf(B,true,false);

B.tulisPoint();
float a = A.jarak0(B);
System.out.println("ini nilai dari a" +"  " +a);
A.hslGeser(B,3,4);
A.tulisPoint();
A.geserKeSbX(B);
A.tulisPoint();
A.geserKeSbY(B);
A.tulisPoint();


}}

Tidak ada komentar:

Posting Komentar