类的组合:点,线,三角形


要求输入三点的坐标求三点各两点所围成线段长度和所围成三角形的周长和面积

#include<math.h>
#include    <iostream>
using    namespace    std;class    myPoint
{public:myPoint();myPoint(double    x, double    y);double    getX();double    getY();
private:double    mX, mY;
};
myPoint::myPoint()
{this->mX = 0;this->mY = 0;
}
myPoint::myPoint(double x, double y)
{this->mX = x;this->mY = y;
}
double myPoint::getX()
{return mX;
}
double myPoint::getY()
{return mY;
}class Line
{public:Line(myPoint& a,myPoint& b){A = a; B = b;}Line(double x, double y){this->x = x;this->y = y;}Line(){this->x = 0;this->y = 0;}double GetDistance(){double dx = A.getX() - B.getX();double dy = A.getY() - B.getY();return sqrt(dx * dx + dy * dy);}
private:myPoint A, B;double x=0, y=0;
};class  Triangle
{public:Triangle(myPoint& a, myPoint& b, myPoint& c):A(a, b), B(a, c), C(b, c){}double getGirth(){double len;len = A.GetDistance() + B.GetDistance() + C.GetDistance();return len;}double getArea(){double len,s,t;len = A.GetDistance() + B.GetDistance() + C.GetDistance();s = len / 2.0;t = sqrt(s * (s - A.GetDistance()) * (s - B.GetDistance()) * (s - C.GetDistance()));return t;}
private:myPoint X, Y, Z;Line A, B, C;
};int    main()
{double    x1, x2, x3, y1, y2, y3;cout << "请输入点1的x的值:";cin >> x1;cout << "请输入点1的y的值:";cin >> y1;cout << "请输入点2的x的值:";cin >> x2;cout << "请输入点2的y的值:";cin >> y2;cout << "请输入点3的x的值:";cin >> x3;cout << "请输入点3的y的值:";cin >> y3;cout << "点1的坐标为:(" << x1 << "," << y1 << ")" << endl;cout << "点2的坐标为:(" << x2 << "," << y2 << ")" << endl;cout << "点3的坐标为:(" << x3 << "," << y3 << ")" << endl;myPoint  p1(x1, y1), p2(x2, y2), p3(x3, y3);Line  line1(p1, p2);Line  line2(p2, p3);Line  line3(p3, p1);cout << "线1长度:" << line1.GetDistance() << endl;cout << "线2长度:" << line2.GetDistance() << endl;cout << "线3长度:" << line3.GetDistance() << endl;Triangle    t(p1, p2, p3);cout << "该三角形的周长为:" << t.getGirth() << endl;cout << "该三角形的面积为:" << t.getArea() << endl;return    0;
}

看完点个赞吧呜呜呜

类的组合:点,线,三角形相关推荐

  1. C++根据点的类构造线三角形类,并测试(江苏大学平时作业)

    (附完整代码)问题描述: 根据点的类构造线三角形类,并测试,题目如下(部分代码如下) class myPoint { public:myPoint();myPoint(double x, double ...

  2. [ python ] 类的组合

    首先,使用面向对象是一个人狗大战的实例: class Person:def __init__(self, name, hp, aggr, sex):self.name = nameself.hp = ...

  3. 【笔记】C++自学笔记系列02:类的组合与类的友元

    类的组合:对象充当成员 在创建对象时,也要对内嵌对象初始化 组合类构造函数定义 类名::类名(形参):内嵌对象1(形参),内嵌对象2(形参) {   } Circle:: Circle(float r ...

  4. 初学者python笔记(静态属性、类方法、静态方法、类的组合)

    文章目录 类的三大方法 1.静态属性 2.类方法.静态方法 3.三大方法总结 类的组合 1.用法分析 2.面试案例分析 本篇文章是上一篇:初学者python笔记(面向对象编程.类与对象)的后续篇,是关 ...

  5. stm32f103gd32的usb虚拟串口,打印类printer组合设备

    stm32f103&gd32的usb虚拟串口+打印类printer组合设备@TOC stm32f103&gd32的usb虚拟串口,打印类printer组合设备 由于gd32和stm32 ...

  6. 第07节 C++类的组合

    C++类的组合 ## 以另一个类的对象为数据成员 例子1:类的组合 #include <iostream> #include <string> using namespace ...

  7. #十二、编写三角形类Triangle,初始化三个属性,分别是三条边的长度,定义一个计算并打印周长的函数 #十三、编写等腰三角形类EWtriangle,继承于三角形类,初始化只用传一个腰长和一个底长,定

    #十二.编写三角形类Triangle,初始化三个属性,分别是三条边的长度,定义一个计算并打印周长的函数 #十三.编写等腰三角形类EWtriangle,继承于三角形类,初始化只用传一个腰长和一个底长,定 ...

  8. Python通过类的组合模拟街道红绿灯

    一,红绿灯揭示板案例思路 1. 创建Traffic_light红绿灯类 (1)静态属性 : <1> 绿灯时间,<2> 黄灯时间 , <3> 红灯时间, <4& ...

  9. C++学习第三天——类的组合+友元函数+常类型+动态内存分配

    类和组合 对象数组和对象指针 可以进行定义对象数组和对象指针 一维对象数组定义方法 类名 数组名[下标表达式]; 类名 数组名[下标表达式]={类名(-),类名(-)}; //第一种默认调用系统给的无 ...

最新文章

  1. python2.0_s12_day10_rabbitMQ使用介绍
  2. 【IntelliJ IDEA】创建 导入 Java 项目
  3. jsp+servlet 导出Excel表格
  4. TI-89T 教你在C程序里调用TI-BASIC程序,看看是否有人对这个感兴趣
  5. matlab cd参数,MATLAB变量参数列表​
  6. 【实践】多场景下的搜索词推荐算法及在腾讯的应用实践.pdf(附下载链接)
  7. 更新导致Svchost CPU100%(转)
  8. 上海,不算太郁闷的地方
  9. 最全面的web程序设计知识点总结
  10. Jrebel激活服务,Jrebel激活,Jrebel激活码,Jrebel破解
  11. matlab 存成bmp格式,MAT、BMP、PNG文件格式说明及MATLAB中文件的保存方式
  12. 计算机第四轮学科评估排名,最权威中国高校学科排名,全国第四轮学科评估结果出炉!...
  13. 播放器音视频同步及网络抖动解决方案
  14. 排队系统拥塞控制的位置
  15. Forbidden什么意思
  16. 你能不能做老大,关键就看这8关!突破了,人人死心塌地追随你
  17. 【python数据挖掘课程】二十八.基于LDA和pyLDAvis的主题挖掘及可视化分析
  18. 如何用python一键去除图片、PDF水印?
  19. Document读取XML
  20. 51单片机与AVR(SPI)单片机驱动DS1302

热门文章

  1. H3C GRE over ipsec配置
  2. 康佳应急广播 EmergRadioBZ(KBTA100-C)项目
  3. 数据化运营19 传播(上):如何打造千万级的私域运营体系?
  4. winform的TreeView动画效果
  5. ubuntu_ros+solidworks+ubuntu_raspberryPi3+arduino_mega机器人仿真实际系统搭建
  6. 怎么给图片加水印,图片加水印方法
  7. [软件需求工程]小爬虫
  8. Mac M1 UTM 安装 Ubuntu
  9. linux系统病毒查杀神器clamav
  10. SAP生产订单创建、工序删除/增加、组件删除/增加、生产订单下达、采购订单创建