zoukankan      html  css  js  c++  java
  • Third practice 5

    Third practice 5

    任务描述

    定义一个Shape基类,在此基础上派生出Rectangle和Circle,二者都有GetArea()函数计算对象的面积。使用Rectangle类创建一个派生类Square。

    测试输入:5689

    预期输出:

    The area of the Circle is 78.5
    The area of the Rectangle is 48
    The area of the Square is 81
    

    源代码

    #include <iostream>
    using namespace std;
    #define PI 3.14
    
    class Shape
    {
    public:
    	Shape() {}
    	~Shape() {}
    	virtual float GetArea() { return -1; }
    };
    
    class Circle : public Shape
    {
    public:
    	virtual float GetArea(){return PI*Redius*Redius;}
    	Circle(float Redius){
    		this->Redius = Redius;
    	};
    private:
    	float Redius;
    };
    
    class Rectangle : public Shape
    {
    public:
    	virtual float GetArea(){return this->length*this->wide;}
    	Rectangle(float length,float wide){
    		this->length = length;
    		this->wide = wide;
    	}
    
    private:
    	float length,wide;
    
    };
    
    class Square : public Rectangle
    {
    public:
    	Square(float len);
    	~Square() {}
    };
    
    Square::Square(float len) :
    	Rectangle(len,len)
    {
    
    }
    
    int main(){
    	float Redius,length,wide,len;
    	cin>>Redius>>length>>wide>>len;
    
    	Circle c(Redius);
    	cout<<"The area of the Circle is "<<c.GetArea()<<endl;
    
    	Rectangle r(length,wide);
    	cout<<"The area of the Rectangle is "<<r.GetArea()<<endl;
    
    	Square s(len);
    	cout<<"The area of the Square is "<<s.GetArea()<<endl;
    	return 0;
    }
    
    
  • 相关阅读:
    eclipse中包的位置
    404代码错误解决
    servlet-web.xml配置
    java web.xml配置servlet
    1031整理
    1030整理
    rownum
    存储过程和自定义函数的区别
    课堂整理
    练习
  • 原文地址:https://www.cnblogs.com/lightice/p/12910907.html
Copyright © 2011-2022 走看看