📄 triangle.java
字号:
class Triangle{
Point p1,p2,p3;
float s1,s2,s3;
float per;
float area;
public Triangle(){
System.out.println("the first point(x1,y1): ");
p1 = new Point();
System.out.println("the second point(x2,y2): ");
p2 = new Point();
System.out.println("the third point(x3,y3): ");
p3 = new Point();
}
public float side(Point a,Point b){
float n = a.x - b.x;
float m = a.y - b.y;
float s =(float)Math.sqrt( n*n + m*m );
return s;
}
public boolean check(Point p1 ,Point p2 ,Point p3){
if(p1.x==p2.x && p1.y==p2.y){System.out.println("Error");return false;}
else if(p1.x==p3.x && p1.y==p3.y){System.out.println("Error");return false;}
else if(p3.x==p2.x && p3.y==p2.y){System.out.println("Error");return false;}
else if((p1.x==p2.x&&p2.x==p3.x)||(p1.y==p2.y&&p2.y==p3.y)){System.out.println("Error");return false;}
else return true;
}
public void permimeter(float s1,float s2,float s3){
per = s1+s2+s3;
}
public void area(Point p1,Point p2,Point p3){
float r,r1,r2,r3;
float max,min;
float c,k;
if(p1.x<=p2.x && p1.x<=p3.x)min=p1.x;
if(p2.x<=p3.x && p2.x<=p1.x)min=p2.x;
else min =p3.x;
if(p1.x>=p2.x && p1.x>=p3.x)max=p1.x;
if(p2.x>=p3.x && p2.x>=p1.x)max=p2.x;
else max=p3.x;
c=max-min;
if(p1.y<=p2.y && p1.y<=p3.y)min=p1.y;
if(p2.y<=p3.y && p2.y<=p1.y)min=p2.y;
else min =p3.y;
if(p1.y>=p2.y && p1.y>=p3.y)max=p1.y;
if(p2.y>=p3.y && p2.y>=p1.y)max=p2.y;
else max=p3.y;
k=max-min;
r=c*k;
r1 =Math.abs(p1.x-p2.x)*Math.abs(p1.y-p2.y)/2;
r2 =Math.abs(p1.x-p3.x)*Math.abs(p1.y-p3.y)/2;
r3 =Math.abs(p3.x-p2.x)*Math.abs(p3.y-p2.y)/2;
area = r-r1-r2-r3;
}
public static void main(String arg[]){
Triangle t = new Triangle();
t.check(t.p1,t.p2,t.p3);
if(t.check(t.p1,t.p2,t.p3)){
t.s1 = t.side(t.p1,t.p2);
t.s2 = t.side(t.p1,t.p3);
t.s3 = t.side(t.p2,t.p3);
t.permimeter(t.s1,t.s2,t.s3);
t.area(t.p1,t.p2,t.p3);
System.out.println("the permeter is :"+t.per);
System.out.println("the area is :"+t.area);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -