C언어 ver2
#include<string>
#include <fstream>
using namespace std;
const double PI = 3.141592;
class Circle
{
protected:
double r; //반지름
double area; //넓이
public:
Circle (){r=0; area=0;}
Circle(double rr){r=rr;}
double calcArea(); //넓이 계산
};
class Cylinder : public Circle
{
private:
double volume; //부피
double length; //길이
public:
Cylinder(double a, double l) { area = a; length = l;}
double calcVolume(); //부피 계산
void showResult(); //결과 출력
};
double Circle::calcArea() { area=PI*r*r; return area; }
double Cylinder::calcVolume() { volume = area * length ; return volume; }
void Cylinder::showResult()
{
cout << "n원의 넓이 : " << area << ", 실린더 부피 : " << volume << endl;
}
int main() {
double r=0, length=0; double n=0; char ans;
do {
cout << "n반지름과 길이를 입력받아" << endl;
cout << "원의 넓이와 실린더의 부피를 계산하는 프로그램" << endl;
cout << "n반지름 : "; cin >> r;
cout << "길이 : "; cin >> length;
Circle myCircle(r);
Cylinder myCylinder(myCircle.calcArea(),length);
myCylinder.calcVolume();
myCylinder.showResult();
cout<<"n다시 하시겠습니까?(y or n) ";
cin>>ans;
} while('Y'==toupper(ans));
}