用面向对象的程序设计编程:已知三角形的三顶点求三角形的面积和周长。(要求能显示输出三角形各边长的值。并使用组合类完成。)

qq_33398504 2016-01-06 06:43:42
#include<iostream>
#include<cmath>
using namespace std;
class Point
{
int x,y;//顶点坐标
public:
int getX();
int getY();
void setpoint(int,int);//重新设定顶点坐标
Point(int,int);//构造函数
Point(Point &);//复制构造函数
~Point();//析构函数
};//end Point
int Point::getX(){return x;}
int Point::getY(){return y;}
Point::Point(int x0,int y0)
{
x=x0;
y=y0;
}//构造函数
Point::Point(Point &P)
{x=P.x;y=P.y;}//复制构造函数
Point::~Point(){}//析构函数
class Line
{
Point p1,p2;
public:
double getlen();
};//end Line
double Line::getlen()
{
int x1,y1,x2,y2;
double len;
Point p1(3,4);
Point p2(1,2);
x1=p1.getX;
y1=p1.getY;
x2=p2.getX;
y2=p2.getY;
len=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
cout<<"边长为"<<len;
return len;
}
class Ctriangle
{
private:
Line l1,l2,l3;//边长
public:
double area();//计算面积
double perimeter();//计算周长
};//end Ctriangle
double Ctriangle::area()
{
double s,p;
p=(l1.getlen+l2.getlen+l3.getlen)/2;
s=sqrt(p*(p-l1.getlen)*(p-l2.getlen)*(p-l3.getlen);
cout<<"三角形面积为"<<s;
return s;
}
double Ctriangle::perimeter()
{
double C;
C=l1.getlen+l2.getlen+l3.getlen;
cout<<"三角形周长为"<<C;
return C;
}
int main()
{
Point p1,p2,p3;
Line l1,l2,l3;
Ctriangle tri;
l1.getlen;
l2.getlen;
l3.getlen;
tri.area;
tri.perimeter;
return 0;
}
这怎么改。。。
...全文
1484 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
fly_dragon_fly 2016-01-07
  • 打赏
  • 举报
回复
getline调用差括号 如l1.getline(); 感觉Line有点多余, Point类没提供任何功能,Triangle没有构造函数,应该是三个点来构造

15,440

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧