#include<iostream>
using namespace std;
class CShape
{
protected:
double Garo;
public:
CShape() : Garo(0)
{}
CShape(double Garo)
{
this->Garo = Garo;
}
};
class CRect : public CShape
{
protected:
double Sero;
public:
CRect() : Sero(0)
{}
double GetArea()
{
return Garo*Sero;
}
};
class CTrinangle : public CRect
{
protected:
double Height;
public:
CTrinangle() : Height(0)
{}
CTrinangle(double Height)
{
this->Height = Height;
}
double GetArea()
{
return 0.5*Garo*Height;
}
};
class CSadari : public CTrinangle
{
protected:
double UpperGaro;
public:
CSadari() : UpperGaro(0)
{}
CSadari(double UpperGaro)
{
this->UpperGaro = UpperGaro;
}
double GetArea()
{
return (Garo + UpperGaro)*Height*0.5;
}
};
int main()
{
double Garo, Sero, Height, UpperGaro;
cout << "Input Garo : ";
cin >> Garo;
cout << "Input Sero : ";
cin >> Sero;
cout << "Input Height : ";
cin >> Height;
cout << "Input UpperGaro : ";
cin >> UpperGaro;
CShape c1(Garo);
CRect c2(Sero);
CTrinangle c3(Height);
CSadari c4(UpperGaro);
cout << "Area of Rect : " << c2.GetArea() << endl;
cout << "Area of Triangle : " << c3.GetArea() << endl;
cout << "Area of Sadari : " << c4.GetArea() << endl;
return 0;
}
이 코드인데 메인함수에서 cin으로 각 클래스별 생성자 통해서 초기값 주고 3개의 클래스에서 같은 이름의 함수인 GetArea함수로 각 도형별
면적을 뽑는 코드인데요. 결과가 이렇게나옵니다.
컴파일중에 오류같은건 안뜨는데 코드에서 어디가 잘못된건지 계속 이러네요.... 부모클래스에서 변수를 받아올때 GetArea함수가 잘못된거같은
느낌이긴한데 문제점을 찾지못하겟습니다.