美文网首页
JAVA HW2-2

JAVA HW2-2

作者: qratosone | 来源:发表于2016-05-18 19:22 被阅读0次

    编写一个三角形类,能根据输入的3个double类型数据构造三角形对象,定义三个构造方法。
    如果这3个数据满足构成三角形的条件,直接构造三角形。
    否则,如果3个数的最大值大于0,则自动构造以最大值为边的等边三角形。
    如果最大值也不大于0,则将三角形类的三边都初始化为0。
    再定义一个getArea方法,计算所构造的三角形的面积,返回类型为double。
    最后,编写main方法,测试getArea方法,计算三角形的面积。
    输入:
    输入三个有理数,中间用空格隔开。
    例如:
    8.9 6.4 7.2
    输出:输出三角形的面积。
    例如:
    22.78812396293297


    代码

    
    import java.util.Scanner;
    
    /**
     * Created by qrato on 2016/5/18.
     */
    public class Main {
        public static void main(String[] args) {
            // write your code here
            Scanner input=new Scanner(System.in);
            double a,b,c;
            a=input.nextDouble();
            b=input.nextDouble();
            c=input.nextDouble();
    
            //   System.out.println(y1);
            Rectangle r=new Rectangle(a,b,c);
            System.out.println(r.getArea());
        }
    }
    class Rectangle{
        double e1,e2,e3;
        private double findMax(double a,double b,double c){
            if(a>b&&a>c){
                return a;
            }
            else if(c>a&&c>b){
                return c;
            }
            else
                return b;
        }
        Rectangle(double i1,double i2,double i3){
    
            if (i1+i2>i3&&i2+i3>i1&&i1+i3>i2&&i1>0&&i2>0&&i3>0){
                e1=i1;
                e2=i2;
                e3=i3;
            }
            else {
                double max=findMax(i1,i2,i3);
                if (max>0){
                    e1=max;
                    e2=max;
                    e3=max;
                }
                else {
                    e1=0;
                    e2=0;
                    e3=0;
                }
            }
        }
        public double getArea(){
            double p=(e1+e2+e3)/2;
            double s=Math.sqrt(p*(p-e1)*(p-e2)*(p-e3));
            return s;
        }
    }
    
    

    相关文章

      网友评论

          本文标题:JAVA HW2-2

          本文链接:https://www.haomeiwen.com/subject/wqvwrttx.html