У меня есть четыре ошибки, с которыми я борюсь.
В блоке WriteLine, предназначенном для распечатки областей фигур, в обоих местах, где появляется переменная 'area', выдается сообщение об ошибке: «Имя« area »не существует в текущем контексте». Вторая проблема заключается в классе Rectangle: GeometricFigure для 'ComputeArea', ошибка гласит: «Rectangle.ComputeArea ()» скрывает унаследованный член «GeometricFigure.ComputeArea ()». Используйте ключевое слово new, если скрытие было запланировано ». Последняя ошибка относится к классу Triangle: GeometricFigure и касается 'Triangle' в выражении 'public Triangle (int x, int y)'. Сообщение об ошибке гласит: «Rectangle.ComputeArea ()» скрывает унаследованный член «GeometricFigure.ComputeArea ()». Используйте новое ключевое слово, если было скрыто.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static System.Console;
namespace ShapesDemo
{
class Program
{
static void Main(string[] args)
{
Rectangle rec = new Rectangle(8, 10);
Square squ = new Square(11, 12);
Triangle tri = new Triangle(10, 20);
Console.WriteLine("Computed area is {0}" + "\n\n" + "Computed Triangle is: {1}" + "\n",
squ.ComputeArea(area), tri.ComputeArea(area));
}
}
abstract class GeometricFigure
{
public GeometricFigure(decimal sideA, decimal sideB)
{
this.height = sideA;
this.width = sideB;
}
protected decimal area;
protected decimal width;
protected decimal height;
public decimal Height
{
get
{
return height;
}
set
{
height = value;
ComputeArea();
}
}
public decimal Width
{
get
{
return width;
}
set { width = value; }
}
public decimal Area
{
get { return area; }
set { area = value; }
}
public void ComputeArea()
{
}
}
class Rectangle : GeometricFigure
{
public Rectangle(decimal sideA, decimal sideB) : base(sideA, sideB)
{
}
public void ComputeArea()
{
area = width * height;
WriteLine("The Area is" + width.ToString(), height.ToString());
}
static void Display(Rectangle rec)
{
}
}
class Square : GeometricFigure
{
static void Display(Square squ)
{
}
public Square(decimal sideA, decimal sideB) : base(sideA, sideA)
{
}
}
class Triangle : GeometricFigure
{
static void Display(Triangle tri)
{
}
public Triangle(int x, int y)
{
this.Width = x;
this.Height = y;
}
}
}