#include <Turboc.h>

#include <math.h>


class Sun

{

private:

int x, y;

char ch;


public:

Sun(int ax, int ay, char ach) { x = ax; y = ay; ch = ach; }

void Show() {

gotoxy(x, y); putch(ch);

}

void Hide() {

gotoxy(x, y); putch(' ');

}

int GetX() const { return x; }

int GetY() const { return y; }

};


class Earth

{

private:

int r;

int x, y;

char ch;

const Sun *pSun;


public:

Earth(int ar, char ach, Sun *apSun) { r = ar; ch = ach; pSun = apSun; }

void Revolve(double angle) {

Hide();

x = int(cos(angle*3.1416 / 180)*r * 2);

y = int(sin(angle*3.1416 / 180)*r);

Show();

}

void Show() {

gotoxy(pSun->GetX() + x, pSun->GetY() + y); putch(ch);

}

void Hide() {

gotoxy(pSun->GetX() + x, pSun->GetY() + y); putch(' ');

}

};


void main()

{

Sun S(40, 12, 'S');

Earth E(10, 'E', &S);


clrscr();

S.Show();

for (double angle = 0; !kbhit(); angle += 10) {

E.Revolve(angle);

delay(100);

}

}




여기서 Hide() 가 무슨 역활인지 모르겠어 


알려주실분 크흠...