设计并测试Trapezium类

xiaoxiao2021-02-28  63

题目内容:

设计并测试一个名为Trapezium的梯形类,其属性为梯形的四个顶点的坐标。该梯形上边和下边均和x轴平行。 根据类的封装性要求,在类的声明中用8个私有的整型变量表示4个点的坐标值,声明成员函数initial(int,int,int,int,int,int,int,int)初始化数据成员,函数GetPosition(int&,int&,int&,int&,int&,int&,int&,int&)读取坐标值,函数Area()计算面积。

输入格式:

梯形四个顶点的坐标,

输出格式:

梯形的面积,依次为左上(x1,y1)、右上(x2,y2)、左下(x3,y3)和右下(x4,y4)角的顶点。

输入样例:

3 2 5 2 1 -4 7 -4

输出样例:

24

时间限制:500ms内存限制:32000kb

#include <iostream> using namespace std; class Trapezium { private: int x1; int y1; int x2; int y2; int x3; int y3; int x4; int y4; public: void initial(int TrapeziumX1,int TrapeziumY1,int TrapeziumX2,int TrapeziumY2,int TrapeziumX3,int TrapeziumY3,int TrapeziumX4,int TrapeziumY4) { x1 = TrapeziumX1; x2 = TrapeziumX2; x3 = TrapeziumX3; x4 = TrapeziumX4; y1 = TrapeziumY1; y2 = TrapeziumY2; y3 = TrapeziumY3; y4 = TrapeziumY4; } void GetPosition(int& pX1,int& pY1,int& pX2,int& pY2,int& pX3,int& pY3,int& pX4,int& pY4) { cout<< pX1 << " " << pY1 << " " << pX2 << " " << pY2 << " " << pX3 << " " << pY3 << " " << pX4 << " " << pY4 << endl; } int Area() { int s; s = (x2-x1+x4-x3)*(y2-y4)/2; return s; } }; int main() { int x1,y1,x2,y2,x3,y3,x4,y4; cin>>x1>>y1>>x2>>y2>>x3>>y3>>x4>>y4; Trapezium t; t.initial(x1, y1, x2, y2, x3, y3, x4, y4); cout<<t.Area()<<endl; return 0; }
转载请注明原文地址: https://www.6miu.com/read-2299962.html

最新回复(0)