На базе класса "двухмерная точка" унаследовать класс "трехмерная точка" - C#
Формулировка задачи:
На базе класса "двухмерная точка", при помощи наследия классов, создать класс "трехмерная точка".
Переопределить\перегрузить методы:
-Расстояние между двумя точками.
-Расстояние от данной точки до другой точки.
-Расстояние от данной точки до начало координат.
-Сдвиг по оси Х.
-Сдвиг по оси Y.
-Два метода для получения Х и Y координаты точки.
вот код не очень правильный, помогите, плиз))
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Lab4 { class Point { static void Main(string[] args) { } private double x; private double y; public Point() { x = 0; y = 0; } public Point(double _x, double _y) { x = _x; y = _y; } public Point(Point _point) : this(_point.x, _point.y) { } public static double FromPointToPoint(Point _point1, Point _point2) { return Math.Sqrt(Math.Pow((_point1.x - _point2.x), 2) + Math.Pow((_point1.y - _point2.y), 2)); } public static double FromPointToStart(Point _point1) { return FromPointToPoint(_point1, new Point()); } public double X { set { x = value; } get { return x; } } public double Y { set { y = value; } get { return y; } } public void ShiftX(double _shift) { x += _shift; } public void ShiftY(double _shift) { y += _shift; } public override string ToString() { return "(" + x + "|" + y + ")"; } } }
Решение задачи: «На базе класса "двухмерная точка" унаследовать класс "трехмерная точка"»
textual
Листинг программы
public class Point { protected double _x; protected double _y; public Point(double x, double y) { _x = x; _y = y; } public Point() : this(0d, 0d) { } public Point(Point point) : this(point.X, point.Y) { } public double X { set { _x = value; } get { return _x; } } public double Y { set { _y = value; } get { return _y; } } public virtual double GetDistanceFromPointToPoint(Point point1, Point point2) { return Math.Sqrt(Math.Pow((point1._x - point2._x), 2) + Math.Pow((point1._y - point2._y), 2)); } public virtual double GetDistanceFromPointToStart(Point point1) { return GetDistanceFromPointToPoint(point1, new Point()); } public virtual void ShiftX(double dx) { _x += dx; } public virtual void ShiftY(double dy) { _y += dy; } public override string ToString() { return "(" + _x + "|" + _y + ")"; } } public class Point3D : Point { protected double _z; public Point3D(double x, double y, double z) : base(x, y) { _z = z; } public Point3D() : this(0d, 0d, 0d) { } public Point3D(Point3D point) : this(point.X, point.Y, point.Z) { } public double Z { set { _z = value; } get { return _z; } } //public override double GetDistanceFromPointToPoint(Point point1, Point point2) //{ // return base.GetDistanceFromPointToPoint(point1, point2); //} //public override double GetDistanceFromPointToStart(Point point1) //{ // return base.GetDistanceFromPointToStart(point1); //} //public override void ShiftX(double dx) //{ // base.ShiftX(dx); //} //public override void ShiftY(double dy) //{ // base.ShiftY(dy); //} public virtual void ShiftZ(double dz) { _z += dz; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д