#include<iostream>
using namespace std;
class Coordinate {
public:
Coordinate()
{
times = 2;
cout << "Coordinate construction1 called!" << endl;
}
Coordinate(int times1) {
times = times1;
cout << "Coordinate construction2 called" << endl;
}
~Coordinate (){
cout << "Coordinate destruction called!" << endl;
}
void inputCoord() {
for (int i = 0; i < times; i++) {
cout << "Please Input x:" << endl;
cin >> Coord[i][1];
cout << "Please Input y:" << endl;
cin >> Coord[i][2];
}
}
void ShowCoord() {
cout << "The coord is:" << endl;
for (int i = 0; i < times; i++) {
cout << "(" << Coord[i][1] << "," << Coord[i][2] << ")" << endl;
}
}
void ShowAvgCoord() {
float avgx = 0;
float avgy = 0;
for (int i = 0; i < times; i++) {
avgx = avgx + Coord[i][1];
avgy = avgy + Coord[i][2];
}
avgx = avgx / times;
avgy = avgy / times;
cout << "The Avg coord is:" << endl;
cout << "(" << avgx << "," << avgy << ")" << endl;
}
private:
float Coord[100][100];
int times;
};
int main() {
Coordinate x;
x.inputCoord();
x.ShowCoord();
x.ShowAvgCoord();
//Coordinate y(5);
//y.inputCoord();
//y.ShowCoord();
//y.ShowAvgCoord();
return 0;
}
通过课程所给代码,构建一个Coordinate类,通过键盘输入x和y的坐标值,然后输出(x,y),同时计算出坐标的平均值。之后再调用代码中注释的部分,通过运行结果发现再执行完原有函数之后又再次调用输入坐标函数,可输入5组坐标,输出(x,y)以及平均坐标。
在该程序中开始运行之后首先调用构造函数内容,之后运行输入坐标程序,当函数执行完毕,调用析构函数。