一个名为Rectangle的矩形类,其属性为矩形的左上角和右下角两个点的坐标,能够计算矩形的周长和面积

#include<iostream>usingnamespacestd;classRectangle{public:voidperimeter_value();voida... #include<iostream>
using namespace std;
class Rectangle
{
public:
void perimeter_value();
void area_value();
void input_value(int a,int b,int c,int d);
private:
int length;
int width;
int perimeter;
int area;
};

int main()
{
Rectangle t1;
t1.perimeter_value();
t1.area_value();
t1.input_value(3,7,5,3);//两个点的坐标
return 0;
}
void Rectangle::input_value(int a,int b,int c,int d)
{
length=c-a;
width=b-d;
}
void Rectangle::perimeter_value()
{
perimeter=2*(length+width);
cout<<perimeter<<endl;
}
void Rectangle::area_value()
{
area=length*width;
cout<<area<<endl;
}
没有错误,但运行结果不对,我是菜鸟,帮我看看吧
展开
 我来答
御坂02560
2014-11-12 · 超过53用户采纳过TA的回答
知道答主
回答量:112
采纳率:0%
帮助的人:99.8万
展开全部
#include<math.h>
struct point
{float x,y;
};
double area(point p1,point p2)
{double a;
a=sqrt((p2.x-p1.x)*(p2.x-p1.x)*(p2.y-p1.y)*(p2.y-p1.y));
return a;
}
void main ()
{double s;point p1,p2;
cout<<"输入两个点的坐标:\n";
cin>>p1.x>>p1.y>>p2.x>>p2.y;
s=area(p1,p2);
cout<<"矩形的面积为:"<<s;
}
给个思路。自己改改
求采纳为满意回答。
xmcong2000
推荐于2017-11-26 · TA获得超过3471个赞
知道大有可为答主
回答量:1919
采纳率:0%
帮助的人:1288万
展开全部
首先:
t1.perimeter_value();
t1.area_value();
t1.input_value(3,7,5,3);//两个点的坐标
你为什么先计算周长和面积,最后才输入值,顺序反了
再次:
void Rectangle::input_value(int a,int b,int c,int d)
{
length=c-a;
width=b-d; //这里不是d-b?
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式