c/c++语言开发共享C++计算圆形、矩形和三角形的面积

题目描述运用多态编写程序,声明抽象基类shape,由它派生出3个派生类: circle(圆形)、rectangle(矩形)、triangle(三角形),用一个函数printarea()分别输出以上三者


题目描述

运用多态编写程序,声明抽象基类shape,由它派生出3个派生类: circle(圆形)、rectangle(矩形)、triangle(三角形),用一个函数printarea()分别输出以上三者的面积(结果保留两位小数),3个图形的数据在定义对象时给定。

输入

圆的半径 矩形的边长 三角形的底与高

输出

圆的面积

矩形的面积

三角形的面积

注意:每一行后有回车符

样例输入

12.6 4.5 8.4 4.5 8.4

样例输出

area of circle=498.76

area of rectangle=37.80

area of triangle=18.90

代码实现

#include<iostream>  #include<iomanip>   #define pi 3.1415926  using namespace std;  class shape {      public:          virtual double printarea()=0;  };  class circle:public shape {      private:          double r;      public:          circle(double x) {              r=x;          }          virtual double printarea() {              return pi*r*r;          }  };  class rectangle:public shape {      private:          double w,h;      public:          rectangle(double x,double y) {              w=x,h=y;          }          virtual double printarea() {              return w*h;          }  };  class triangle:public shape {      private:          double w,h;      public:          triangle(double x,double y) {              w=x,h=y;          }          virtual double printarea() {              return w*h/2;          }  };  double printarea(shape &x) {  	return x.printarea();  }  int main() {      double a,b,c,d,e;      cin>>a>>b>>c>>d>>e;      circle cir(a);      rectangle rec(b,c);      triangle tri(d,e);      cout<<fixed<<setprecision(2)<<"area of circle="<<printarea(cir)<<'n';      cout<<fixed<<setprecision(2)<<"area of rectangle="<<printarea(rec)<<'n';      cout<<fixed<<setprecision(2)<<"area of triangle="<<printarea(tri)<<'n';      return 0;  }

以上所述是小编给大家介绍的c++计算圆形、矩形和三角形的面积,希望对大家有所帮助。在此也非常感谢大家对<计算机技术网(www.ctvol.com)!!>网站的支持!

需要了解更多c/c++开发分享C++计算圆形、矩形和三角形的面积,都可以关注C/C++技术分享栏目—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/c-cdevelopment/1038422.html

(0)
上一篇 2022年1月26日
下一篇 2022年1月26日

精彩推荐