⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 求几何图形面积周长.txt

📁 求一个几何图形的周长和面积
💻 TXT
字号:
//SolveGraphics.java
import java.util.Scanner;
import java.io.*;
class Point{double a,b;int x,y;
void print(){System.out.println("Please input two number:");
Scanner cin=new Scanner(System.in);x=cin.nextInt();y=cin.nextInt();a=(double)x;b=(double)y;
}       }
class Shape {                  
    double p;double area;static double distance;double p1,p2;
static double getDistance(double x1,double x2,double y1,double y2){     
        distance=Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));return distance;}
double getArea(double x1,double x2,double x3,double y1,double y2,double y3){
       area=Math.abs((x1*y2+x2*y3+x3*y1-x1*y3-x2*y1-x3*y2)/2);return area;}
double getPerimeter(double x1,double x2,double x3,double y1,double y2,double y3){
     p=getDistance(x1,y1,x2,y2)+getDistance(x1,y1,x3,y3)+getDistance(x3,y3,x2,y2);return p;}
static boolean isorNotTriangle(double x1,double x2,double x3,double y1,double y2,double y3){
         if(x1==x2&&x2==x3)return false;
         else if(y1==y2&&y2==y3)return false;
         else    return true;
                       }
void print(){System.out.println("The center of the rectangle is :"+p1+","+p2);
System.out.println("The perimeter of the rectangle is :"+p);
System.out.println("The area of the rectangle is :"+area);}
}
class Line extends Shape{               
             Point lp1=new Point();Point lp2=new Point();
  void center(){lp1.print();lp2.print();
           p1=(lp1.a+lp2.a)/2; p2=(lp1.b+lp2.b)/2;     
           System.out.println("The center of the graphic is :"+p1+","+p2);  
           System.out.println("The perimeter of the graphic is :"+getDistance(lp1.a,lp2.a,lp1.b,lp2.b));
           System.out.println("The area of the graphic is :zero");}                
                                              }
class Circle extends Shape {             
            Point cp1=new Point();
  void center(){System.out.println("你输入的坐标将是圆的圆心!");
         cp1.print();p1=cp1.a;p2=cp1.b;System.out.print("Please input the radius:");
         Scanner cir=new Scanner(System.in);int r=cir.nextInt();
         System.out.println("The center of the circle is :"+p1+","+p2);
         System.out.println("The perimeter of the circle is :"+2*Math.PI*r);
         System.out.println("The area of the circle is :"+Math.PI*r*r);}
                      }
class Triangle extends Shape {         
          double sidetriangleA;double sidetriangleB;double sidetriangleC;
          Point tp1=new Point(); Point tp2=new Point(); Point tp3=new Point();
 void center(){tp1.print();tp2.print();tp3.print();p1=(tp1.a+tp2.a+tp3.a)/2;p2=(tp1.b+tp2.b+tp3.b)/2;
              if(isorNotTriangle(tp1.a,tp2.a,tp3.a,tp1.b,tp2.b,tp3.b)==true){ 
         p=getPerimeter(tp1.a,tp2.a,tp3.a,tp1.b,tp2.b,tp3.b);
         area=getArea(tp1.a,tp2.a,tp3.a,tp1.b,tp2.b,tp3.b);print(); }
              else { System.out.print("It is not a triangle.");center();}
               }
                                 }

class Rectangle extends Shape {        
          double siderectangleA;double siderectangleB;double siderectangleC;
          Point rp1=new Point(); Point rp2=new Point(); Point rp3=new Point();
 void center(){rp1.print();rp2.print();rp3.print();
             System.out.println("第四点坐标可以不输入!");
siderectangleA=(rp1.a-rp2.a)*(rp1.a-rp2.a)+(rp1.b-rp2.b)*(rp1.b-rp2.b);
siderectangleB=(rp1.a-rp3.a)*(rp1.a-rp3.a)+(rp1.b-rp3.b)*(rp1.b-rp3.b);
siderectangleC=(rp2.a-rp3.a)*(rp2.a-rp3.a)+(rp2.b-rp3.b)*(rp2.b-rp3.b);
if(siderectangleA+siderectangleB==siderectangleC)
        {area=Math.sqrt(siderectangleA*siderectangleB);p=2*(Math.sqrt(siderectangleA)+Math.sqrt(siderectangleB));
           p1=(rp2.a+rp3.a)/2; p2=(rp2.b+rp3.b)/2;print(); }   
 else if(siderectangleA+siderectangleC==siderectangleB)
        {area=Math.sqrt(siderectangleA*siderectangleC);p=2*(Math.sqrt(siderectangleA)+Math.sqrt(siderectangleC));
           p1=(rp1.a+rp3.a)/2; p2=(rp1.b+rp3.b)/2; print();}  
else if (siderectangleB+siderectangleC==siderectangleA)
        {area=Math.sqrt(siderectangleC*siderectangleB);p=2*(Math.sqrt(siderectangleC)+Math.sqrt(siderectangleB));
           p1=(rp2.a+rp1.a)/2; p2=(rp2.b+rp1.b)/2;print(); } 
else {System.out.print("It is not a rectangle.");center();}       
                }
                                         }
public class SolveGraphics extends Shape{        
       static  double distance;static double d1,d2,d3,d4;static double d;
 static double getDistance(double x1,double x2,double y1,double y2){     
        distance=Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
        System.out.println("the distance of the two graphics is:"+distance);
        return distance;}
public static void main(String args[])throws IOException{ 
String m;String n;System.out.println("a line,a triangle,a rectangle or a circle?");
BufferedReader ltrc1=new BufferedReader(new InputStreamReader(System.in));m=ltrc1.readLine();
    if(m.equals("line")==true){System.out.println("You want to input a graphics of line");
            Line line1=new Line();line1.center();d1=line1.p1;d2=line1.p2;
                                    }
                      
   else if(m.equals("triangle")==true) {System.out.println("You want to input a graphics of triangle");
           Triangle triangle1=new Triangle();triangle1.center();d1=triangle1.p1;d2=triangle1.p2;
                                         }
                       
   else  if(m.equals("rectangle")==true){System.out.println("You want to input a graphics of rectangle");
            Rectangle rectangle1=new Rectangle();rectangle1.center();d1=rectangle1.p1;d2=rectangle1.p2;
                                       }
   else if(m.equals("circle")==true){System.out.println("You want to input a graphics of circle");
            Circle circle1=new Circle(); circle1.center();   d1=circle1.p1;d2=circle1.p2;         
                                    } 
System.out.println("another graphics:a line,a triangle,a rectangle , a circle or no?");
BufferedReader ltrc2=new BufferedReader(new InputStreamReader(System.in));n=ltrc2.readLine();
   if(n.equals("no")==true){System.out.println("program is over!");}
  
   else  if(n.equals("line")==true){System.out.println("You want to input a graphics of line");
               Line line2=new Line();line2.center();d3=line2.p1;d4=line2.p2;
                d=getDistance(d1,d3,d2,d4);
                                    }
                      
   else if(n.equals("triangle")==true) {System.out.println("You want to input a graphics of triangle");                                      Triangle triangle2=new Triangle();triangle2.center();d3=triangle2.p1;d4=triangle2.p2;
               d=getDistance(d1,d3,d2,d4);
                                         }
                       
   else if(n.equals("rectangle")==true){System.out.println("You want to input a graphics of rectangle");
              Rectangle rectangle2=new Rectangle(); rectangle2.center();d3=rectangle2.p1;d4=rectangle2.p2;
              d=getDistance(d1,d3,d2,d4);
                                       }
   else if(n.equals("circle")==true){System.out.println("You want to input a graphics of circle");
             Circle circle2=new Circle(); circle2.center();d3=circle2.p1;d4=circle2.p2;  
              d=getDistance(d1,d3,d2,d4);     
                                    }
                                                              }
                            }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -