Write 2 classes named Square and Cube.
The class Cube inherits the class Square.
The class Square has 2  integers attributes named x and y. It has one constructor that takes two integers and assigns them to x and y. Finally it has 1 method named computeArea the returns an integers after calculating the area of the square. The method fets no arguments.
The class Cube has one field which is a private integer named z. It has one constructor takes three integer arguments and calls its super-class constructor to assign x and y values, and then it assigns z value in its own constructor. Finally, it overrides the method computeArea. 
Code:
#include <iostream>
 
using namespace std;
class Square 
{
public:
	Square(int x1, int y1);
	int computeArea();
	private:
	int x;
	int y;
};
Square::Square(int x1, int y1)
{
	x = x1;
	y= y1;
}
int Square::computeArea()
{
	return x * y;
}
class Cube: public Square
{
   public:
	   Cube(int z1,int x, int y):Square(x, y)
	   {
		   z = z1;
	   }
	   int computeArea()
	   {
		   return Square::computeArea() * z; 
	   }
      
   private:
	   int z;
};
int main(int argc, char *argv[])
{
	    Square square(10,10);
        Cube cube(10,10,10);
 
		cout<<"Square's area: "<< square.computeArea();
        cout<<"\nCube's area: "<< cube.computeArea();
	return 0;	
}