C++/열혈 C++ 프로그래밍(윤성우 저)

열혈 C++ 프로그래밍 3-1 문제

꾸준함. 2017. 5. 29. 17:40

/*

2차원 평면상에서의 좌표를 표현할 있는 구조체를 다음과 같이 정의하였다

struct Point

{

        int xpos;

        int ypos;

};

위의 구조체를 기반으로 다음의 함수를 정의하고자 한다(자세한 기능은 실행의 예를 통해서 확인)

void MovePos(int x, int y); //점의 좌표이동

void AddPoint(const Point &pos); //점의 좌표증가

void ShowPosition(); //현재 x, y 좌표정보 출력

 

int main(void)

{

        Point pos1={12, 4};

        Point pos2={20, 30};

 

        pos1.MovePos(-7, 10);

        pos1.ShowPosition(); //[5, 14] 출력

 

        pos1.AddPoint(pos2);

        pos1.ShowPosition(); //[25, 44] 출력

        return 0;

}

*/

#include <iostream>

using namespace std;

 

struct Point

{

        int xpos;

        int ypos;

        void MovePos(int x, int y)

        {

               xpos += x;

               ypos += y;

        }

        void AddPoint(const Point &pos)

        {

               xpos += pos.xpos;

               ypos += pos.ypos;

        }

        void ShowPosition()

        {

               cout << "[" << xpos << ", " << ypos << "]" << endl;

        }

};

 

int main(void)

{

        Point pos1 = { 12, 4 };

        Point pos2 = { 20, 30 };

 

        pos1.MovePos(-7, 10);

        pos1.ShowPosition(); //[5, 14] 출력

 

        pos1.AddPoint(pos2);

        pos1.ShowPosition(); //[25, 44] 출력

        return 0;

}

 


 

 개발 환경:Visual Studio 2017


지적, 조언, 질문 환영입니다! 댓글 남겨주세요~


[참고] 열혈 C++ 프로그래밍 윤성우 저

반응형