Нужно создать стек в котором хранится ссылка на тип ISolid - объект класса ....Generic.Stack, и создать через ссылку на тип ISolid по одному объекту классов Cube и RectSolid, и добавить их в стек. Возможно я неправильно записал в коде ссылку на тип ISolid и неправильно понял задачу. Просьба поправить в таком случае.
using System;
using System.Reflection;
using System.Collections;
using System.Collections.Generic;
namespace LAB_5
{
interface ISolid
{
double GetSurfaceArea();
}
class Cube : ISolid
{
double a;
public Cube(double a)
{
this.a = a;
}
public double GetSurfaceArea()
{
return 6 * a * a;
}
double A { get { return a; } set { a = value; } }
}
class RectSolid : ISolid
{
double c, d, h;
public RectSolid(double c, double d, double h)
{
this.c = c;
this.d = d;
this.h = h;
}
public double GetSurfaceArea()
{
return 2 * (c * d + c * h + d * h);
}
double C { get { return c; } set { c = value; } }
double D { get { return d; } set { d = value; } }
double H { get { return h; } set { h = value; } }
}
class Program
{
static void Main(string[] args)
{
Stack<ISolid> st = new Stack<ISolid>();
double a = Console.Read();
double c = Console.Read();
double h = Console.Read();
double d = Console.Read();
Cube cb = new Cube(a);
RectSolid rs = new RectSolid(c, d, h);
st.Push(cb);
st.Push(rs);
}
}
}
Сборка персонального компьютера от Artline: умный выбор для современных пользователей