c++,已知Shape类为抽象类,包含一个protected的double类型变量 x

137 阅读1分钟

要求 (1)已知Shape类为抽象类,包含一个protected的double类型变量 x; (2)Circle类与InSquare类均从Shape类公有派生; (3)若圆的半径为R,其内接正方形的信息如下图所示。 请根据运行结果与main函数将程序补充完整。 计算时π取3.14,2的平方根取1.414。 例1(只有第1行为输入): 1.2 Circle area=4.5216 Circle perimeter=7.536 InSquare area=2.88 InSquare perimeter=6.7872

请注意,main()函数(或函数调用)必须按如下所示编写: int main() { double r; cin>>r; Shape *p; Circle c(r); InSquare is(r);

p=&c; p->area(); //计算圆的面积并输出 p->perimeter(); //计算圆的周长并输出 p=&is; p->area(); //计算圆内接正方形的面积并输出 p->perimeter(); //计算圆内接正方形的周长并输出 return 0; }