把描述直角坐标系上的一个点的类作为基类,派生出描述一条直线的类和描述一个三角形的类。定义成员函数求出两点间的距离和三角形的面积。

提示:先定义描述点的类Point;类Point的派生类Line为直线类,一直线有两个端点,所以它在点类的基础上新增一组点的坐标(x2,y2);三角形类 T 在直线的基础上再新增一组点的坐标 (x3,y3),求出三角形的面积。具体要求如下:

(1) 定义点类Point    int x1,y1;//保护的数据成员(点坐标)    公有构造函数Point(int a,int b): //初始化x1、y1

(2) 定义直线类Line    int x2,y2;//保护的数据成员(点坐标)。    公有构造函数Line(int a,int b,int c,int d)://初始化x2、y2,以及x1、y1

(3) 定义三角形类Triangle    int x3,y3; //私有的数据成员(点坐标)    double area; //私有的数据成员(面积)    公有构造函数Triangle(int a,int b,int c,int d,int e,int f)://初始化x3、y3,以及 x1、y1, x2、y2void f():  //求三角形面积的功能函数,先求出三条边 x、y、z,然后用以下公式求面积:s=(x+y+z)/2area= sqrt(s*(s - x)*(s - y)*(s - z))void print(): //输出三个点的坐标和面积(4) 在主函数中对该类进行测试。定义一个Triangle类的对象tri,以1和1,4和1,以及4和5作为点的坐标,完成测试工作。程序运行输出:(1,1)  (4,1)  (4,5)     area=6

/*** 定义一个Point类(第一个点的坐标)*/
public class Point {private int x1;private int y1;
//无参public Point(){}
//有参public Point(int x1, int y1) {this.x1 = x1;this.y1 = y1;}
//get,set方法public int getX1() {return x1;}public void setX1(int x1) {this.x1 = x1;}public int getY1() {return y1;}public void setY1(int y1) {this.y1 = y1;}}
/*** 定义一个Line类(第二个点的坐标)*/
public class Line extends Point{private int x2;private int y2;
//无参public Line(){}
//有参public Line(int x1, int y1,int x2, int y2) {super(x1, y1);this.x2 = x2;this.y2 = y2;}
//get,set方法public int getX2() {return x2;}public void setX2(int x2) {this.x2 = x2;}public int getY2() {return y2;}public void setY2(int y2) {this.y2 = y2;}
}
/*** 定义一个Tringle类(第三个点的坐标)*/
public class Tringle extends Line {private int x3;private int y3;private double area;
//无参public Tringle() {}
//有参public Tringle(int x1, int y1, int x2, int y2, int x3, int y3) {super(x1, y1, x2, y2);this.x3 = x3;this.y3 = y3;}
//get,set方法public int getX3() {return x3;}public void setX3(int x3) {this.x3 = x3;}public int getY3() {return y3;}public void setY3(int y3) {this.y3 = y3;}public double getArea() {return area;}public void setArea(double area) {this.area = area;}/*** 定义一个方法(先计算两点之间的距离再求面积)*/public void Distance(int x1, int y1, int x2, int y2, int x3, int y3){Tringle tr=new Tringle();tr.setX1(x1);tr.setY1(y1);tr.setX2(x2);tr.setY2(y2);tr.setX3(x3);tr.setY3(y3);DecimalFormat df = new DecimalFormat("#.00");//取小数点后两位double x = Math.sqrt((tr.getX1() - tr.getX2()) * (tr.getX1()-tr.getX2()) + (tr.getY1() - tr.getY2()) * (tr.getY1() - tr.getY2())  );double y = Math.sqrt((tr.getX2() - tr.getX3()) * (tr.getX2()-tr.getX3()) + (tr.getY2() - tr.getY3()) * (tr.getY2() - tr.getY3())  );double z = Math.sqrt((tr.getX3() - tr.getX1()) * (tr.getX3()-tr.getX1()) + (tr.getY3() - tr.getY1()) * (tr.getY3() - tr.getY1())  );System.out.println("x边的长为" + df.format(x));//取小数点后两位System.out.println("y边的长为" + df.format(y));//取小数点后两位System.out.println("z边的长为" + df.format(z));//取小数点后两位System.out.println("第一个点的坐标为" + "(" + tr.getX1() + "," + tr.getY1() + ")");System.out.println("第二个点的坐标为" + "(" + tr.getX2() + "," + tr.getY2() + ")");System.out.println("第三个点的坐标为" + "(" + tr.getX3() + "," + tr.getY3() + ")");/*** 计算面积(边长1(x),边长2(y),边长3(z))*///海伦公式double p=(x+y+z)/2;//p为半周长(周长的一半)area=Math.sqrt(p*(p-x)*(p-y)*(p-z));//Math.sqrt()返回正确舍入的一个double值的正平方根System.out.println("三角形的面积为:" + df.format(area));}
public class area {public static void main(String[] args) {Tringle t=new Tringle();
//依次输入坐标t.Distance(1,1,4,1,4,5);}
}

运行结果:

JAVA求三角形的面积相关推荐

  1. java求三角形周长 面积_java求三角形面积以及周长---封装

    /* 时间: 2012-10-08 作者: 烟大 程序要求: 1.封装一类三角形对象Triangle,该类对象具有三条边的属性, 具有初始化三角形的功能.修改边长的功能.判断三条边能否构成三角形的功能 ...

  2. java求三角形周长 面积_用java如何求三角形的周长和面积?

    Java code /* * Triangle.java * @author Wenzee Yann, wenzee@gmail.com * @version 0.1000 * @since 2009 ...

  3. java求三角形周长 面积_Java代码计算三角形的周长和面积

    2015-01-05 06:30:01 阅读( 244 ) import java.util.*; public class Sanjiaoxing { /** * @param args */ pu ...

  4. java继承求三角形圆形面积_java求三角形面积

    (min>c)min=c; if(min>d)min=d; System.out.println("min is "+min); } } } 15.test30003求 ...

  5. Java:1014: 求三角形的面积

    1014: 求三角形的面积 时间限制: 1 Sec  内存限制: 30 MB 提交: 43703  解决: 32144 [状态] [讨论版] [提交] [命题人:admin] 题目描述 给出三角形的三 ...

  6. 已知三角形三边求面积的c语言程序,已知三角形三边分别为4,5,6,求三角形的面积。用c语言编写程序...

    已知三角形三边分别为4,5,6,求三角形的面积.用c语言编写程序 关注:114  答案:6  mip版 解决时间 2021-01-18 16:33 提问者谁把流年搁浅 2021-01-17 23:52 ...

  7. 以抛出异常的思想完成判断三边是否能够构成三角形及求三角形的面积

    以抛出异常的思想完成判断三边是否能够构成三角形及求三角形的面积 写一个方法void sanj(int a,int b,int c),判断三个参数是否能构成一个三角形,如果不能则抛出异常NotSanji ...

  8. 求三角形最大面积(DP)

    求三角形最大面积(DP) 在OJ上奇迹般WA了:WA:70. Why? #include <iostream> #include <string.h> using namesp ...

  9. python 三角形的三个边长a,b,c ,求三角形的面积?

    已知:三角形的三个边长a,b,c ,求三角形的面积? 海伦公式: s=(a+b+c)/2 import cmath a = 3 b = 4 c = 5p = 0.5*(a+b+c) m = p*(p- ...

最新文章

  1. Git命令集十五——拉取命令
  2. Flutter 1.17 | 2020 首个稳定版发布!
  3. js 动态获取表格中的值并修改其他表格+js 动态拼接字符串
  4. MySQL查询语句中的IN 和Exists 对比分析
  5. VS2010 运行库设置
  6. 前端学习(1047):todolist删除数据2
  7. epson彩色打印机加墨水_爱普生打印机墨盒如何加墨?
  8. python中的tuple_Python中的tuple元组详细介绍
  9. Java核心知识点学习----多线程中的阻塞队列,ArrayBlockingQueue介绍
  10. 可以在python3下面用的pyh
  11. 基于SSM车牌识别停车场管理系统
  12. [1] UI原型设计工具Pencil Project 学习系列----- 为什么选择
  13. iphone个系列尺寸_10年巨变:华为手机是如何赶超iPhone的
  14. docker默认ip查询
  15. EC-R3588SPC八核8K人工智能工业主机
  16. 【华人学者风采】汪萌 合肥工业大学
  17. div html用法详解,div标签详解
  18. 券业零售业务转型方向已显现?从打造个人IP开始
  19. 【剑指offer】解题思路汇总
  20. biosrecovery什么意思_recovery是什么意思

热门文章

  1. mysql中的ip存储与查询
  2. 教研教改课题 php,关于申报2019年全国高校、职业院校物流教改教研课题的通知...
  3. 苹果手机的微信记录怎么恢复?奉上超好用的恢复技巧,拿走不谢
  4. 本周上榜的这9本原创技术书很赞,《数学之美》作者吴军博士新书霸榜
  5. 首页banner广告图片轮换超炫效果代码
  6. 给大忙人看的码农翻身记
  7. 【转载】提问的智慧(How To Ask Questions The Smart Way)
  8. Android11(R)新特性梳理
  9. 中国十大电子商务网站排名
  10. python异常大总结