문제 번호 1620. -- 객체기반SW설계기말고사 4번

1620: 객체기반SW설계기말고사 4번

시간 제한: 1 Sec  메모리 제한: 128 MB
제출: 166  해결 문제 수: 95
[제출][채점 상황 열람][게시판]

문제 설명

/*
	Point 클래스를 상속받아서 ThreeDPoint 클래스를 정의해보자.
	ThreeDPoint 클래스는 3차원 공간 상의 점을 나타내고 int z; 멤버 변수를 추가로 가진다.

	1) 아래와 같은 객체 생성이 가능하도록 생성자를 정의하고,
		ThreeDPoint p1(10,10,10);
		ThreeDPoint p2;  (이 때, x,y,z는 모두 20으로 초기화된다.)

	2) operator plus overaloding (x,y,z를 각 요소끼리 더한다.)를 구현하시오.
		
		ThreeDPoint p3 = p1 + p2;
	
	3) 클래스 ThreeDPoint는 메소드 getX, getY, getZ 를 제공해야 한다.
	   각각 x,y,z 값을 반환한다.
	   
	이 외의 코드를 수정하여 점수를 취득하는 경우, 부정행위가 됩니다.
*/

#include <iostream>

using namespace std;

class Point {
private:
	int x, y;
protected:
	void setX(int _x) {
		x = _x;
	}
	void setY(int _y) {
		y = _y;
	}
	int getX() {
		return x;
	}
	int getY() {
		return y;
	}
};

class ThreeDPoint : public Point {
private:
	int z;
public:

	// --------------- 아래부터 수정 가능 ------------------------------



	// ------------- 이하 수정 금지 ----------------------------------------
};



int main() {

	int x, y, z;
	cin >> x >> y >> z;

	ThreeDPoint p1(x,y,z);
	ThreeDPoint p2;

	cout << p1.getX() << p1.getY() << p1.getZ() << endl;
	cout << p2.getX() << p2.getY() << p2.getZ() << endl;

	ThreeDPoint p3 = p1 + p2;
	cout << p3.getX() << p3.getY() << p3.getZ() << endl;

	return 0;
}

입력

출력

도움말

출처

[제출][채점 상황 열람]