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

📄 shiyan3.java

📁 这是实验程序;是求三角形
💻 JAVA
字号:
//shiyan3.java
import java.util.Scanner; 
interface gongyongable//定义gongyongable接口
{ 
	public void zhouchang();
    public void area();
}

 class tuxing//图形中包含直线类
{
	public static class line
     {  
		void setline()
		{
	    System.out.println("请输入直线的斜率,然后按回车");
		Scanner k = new Scanner(System.in); 
		int k1 = k.nextInt(); 
		 System.out.println("请输入直线的截距,然后按回车");
		Scanner b = new Scanner(System.in); 
		int b1 = b.nextInt(); 
		System.out.println("y="+k1+"x+"+b1);  
		}
     }
 }
/*abstract class line1//抽象类line1
{
	abstract void setline();
    void print()
	{
		System.out.println("这是你输入的直线");
    }
 }*/

abstract class triangle1//抽象类triangle1
{
	abstract void setside();
    void print()
	{
		System.out.println("这是你输入的三角形");
    }
}

abstract class circle1//抽象类circle1
 { 
	 abstract void setyuan();
     void print()
	{
		System.out.println("这是你输入的圆");
    }
 }
 
abstract class rectangle1//抽象类rectangle1
 { 
	 abstract void setRectangle1();
      void print()
	{
		System.out.println("这是你输入的矩形");
    }
 }


/*class  line extends line1//继承line1
{
  void setline()
		{
	    System.out.println("请输入直线的斜率,然后按回车");
		Scanner k = new Scanner(System.in); 
		int k1 = k.nextInt(); 
		 System.out.println("请输入直线的截距,然后按回车");
		Scanner b = new Scanner(System.in); 
		int b1 = b.nextInt(); 
		System.out.println("y="+k1+"x+"+b1);
		}*/

	
 class triangle extends triangle1 implements gongyongable//继承triangle1
{   double sideA,sideB,sideC;
    double a0,a1,b0,b1,c0,c1;
       public void setside(int k1,int k2, int k3)//多态性
		   {
		   sideA=k1;
		   sideB=k2;
		   sideC=k3;
	       }
		public void setside()
	    {
			System.out.println("请输入点a的坐标,然后按回车");
			Scanner sx1 = new Scanner(System.in); 
			int x1 = sx1.nextInt(); 
			Scanner sy1 = new Scanner(System.in); 
			int y1 = sy1.nextInt(); 
			System.out.println("请输入点b的坐标,然后按回车");
			Scanner sx2 = new Scanner(System.in); 
			int x2 = sx2.nextInt(); 
			Scanner sy2 = new Scanner(System.in); 
			int y2 = sy2.nextInt(); 
			System.out.println("请输入点c的坐标,然后按回车");
			Scanner sx3 = new Scanner(System.in); 
			int x3 = sx3.nextInt(); 
			Scanner sy3 = new Scanner(System.in); 
			int y3 = sy3.nextInt(); 
			a0=Math.pow(x1-x2,2);
			a1=Math.pow(y1-y2,2);
			b0=Math.pow(x1-x3,2);
			b1=Math.pow(y1-y3,2);
			c0=Math.pow(x2-x3,2);
			c1=Math.pow(y2-y3,2);
			sideA=Math.sqrt(a0+a1);
			sideB=Math.sqrt(b0+b1);
			sideC=Math.sqrt(c0+c1);
		}
		double zhouchang,area,p,pingfang;
		boolean isRoNotTriangle()
		{
			if(sideA+sideB>sideC&&sideA+sideC>sideB&&sideC+sideB>sideA)
				{
					System.out.println("这是三角形");
					return true;
				 }
			else
			  {
	       			System.out.println("这不是三角形");
					return false;
					
           }                       
		}
public void zhouchang()//求三角形的周长
	{zhouchang=sideA+sideB+sideC;
     System.out.println("这三角形的周长是:" +zhouchang);
					}
public void area()//求三角形的面积
	{
      p=(sideA+sideB+sideC)/2;
	  pingfang=p*(p-sideA)*(p-sideB)*(p-sideC);
	  area=Math.sqrt(pingfang);
	  System.out.println("这三角形的面积是:" +area);
	}
}
	
	class circle extends circle1 implements gongyongable//继承circle1
	{
	 int r;
	 void setyuan()
			{
		    System.out.println("请输入圆点横坐标,然后按回车");
			Scanner x1 = new Scanner(System.in); 
			int x = x1.nextInt();
			System.out.println("请输入圆点纵坐标,然后按回车");
			Scanner y1 = new Scanner(System.in); 
			int y = y1.nextInt(); 
			System.out.println("请输入圆的半径,然后按回车");
			Scanner r1 = new Scanner(System.in); 
			int r2 = r1.nextInt();
			r=r2;
			}
    public void zhouchang()
			{	
			double zhouchang;
			zhouchang=2*r*Math.PI;
			System.out.println("圆的周长为:" +zhouchang);
			}
	public void area()
			{
		    double area,area1;
		    area1=Math.pow(r,2);
			area=area1*Math.PI;
			System.out.println("圆的面积为:" +area);
			}
	}
	
 class rectangle extends rectangle1 implements gongyongable//继承rectangle1
{   int a,b;        
	public void setRectangle1()
		{  
	        System.out.println("请输入矩形的长,然后按回车");
			Scanner a1 = new Scanner(System.in); 
			int a2 = a1.nextInt(); 
			System.out.println("请输入矩形的,然后按回车");
			Scanner b1 = new Scanner(System.in); 
			int b2 = b1.nextInt();
			a=a2;
			b=b2;
		 }
	public void zhouchang()
		  {
		    double zhouchang;
			zhouchang=2*(a+b);
		    System.out.println("矩形的周长为:" +zhouchang);
		  }
	public void area()
			{
		    double area;
			area=a*b;
			System.out.println("矩形的面积为:" +area);
			}	 
 }
 
 class shiyan31
	{
		void print()
			{System.out.println("               ");
			 System.out.println("*************************************************************");
	         System.out.println("直线类请按1    三角形类2   圆类请按3  求矩形请按4  退出请按5");	
	         Scanner s = new Scanner(System.in); 
             int i = s.nextInt(); 
	         switch(i)
				 {
	    case 1:
		     tuxing.line A= new tuxing.line();
	         A.setline();
			 //A.print();
			 break;
	    case 2:
		     triangle  B =new triangle();
	         B.setside();
			 B.isRoNotTriangle();
			 B.zhouchang();
		     B.area();
			 B.print();
			 break;
	    case 3:
		     circle C= new circle();
	         C.setyuan();
		     C.zhouchang();
		     C.area();
			 C.print();
			 break;
	    case 4 : 
		     rectangle D=new rectangle();
		     D.setRectangle1();
		     D.zhouchang();
		     D.area();
		     D.print();
			 break;
        case 5 :
		     System.exit(1);	
	             }
			}
	  }
  
  public class shiyan3
	  {
      public static void main(String[] args) 
		 {
		 shiyan31 k=new shiyan31();
		  boolean flag;
			 flag=true;
			 while(flag)
				 {
				k.print();
	              }
          }
       }

⌨️ 快捷键说明

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