Console.WriteLine("Многокутник успешно масштабирован.");
break;
case 0:
Console.WriteLine("Выход из программы.");
break;
default:
Console.WriteLine("Некорректный выбор операции.");
break;
}
Console.WriteLine();
} while (choice != 0);
}
}
Этот пример кода демонстрирует создание классов Point, ColoredPoint, Line, ColoredLine и PolyLine с соответствующими свойствами и методами. Программа также включает простое меню, которое позволяет пользователю выбрать операцию для демонстрации работы классов.
Answers & Comments
Ответ:
Объяснение:
using System;
// Класс Point
public class Point
{
public int X { get; set; }
public int Y { get; set; }
public Point(int x, int y)
{
X = x;
Y = y;
}
}
// Класс ColoredPoint на основе класса Point
public class ColoredPoint : Point
{
public string Color { get; set; }
public ColoredPoint(int x, int y, string color) : base(x, y)
{
Color = color;
}
}
// Класс Line
public class Line
{
public Point StartPoint { get; set; }
public Point EndPoint { get; set; }
public Line(Point startPoint, Point endPoint)
{
StartPoint = startPoint;
EndPoint = endPoint;
}
public void Rotate(double angle)
{
// Логика поворота линии на заданный угол
}
}
// Класс ColoredLine на основе класса Line
public class ColoredLine : Line
{
public string Color { get; set; }
public ColoredLine(Point startPoint, Point endPoint, string color) : base(startPoint, endPoint)
{
Color = color;
}
}
// Класс PolyLine
public class PolyLine
{
public Point[] Points { get; set; }
public PolyLine(Point[] points)
{
Points = points;
}
public void Scale(double factor)
{
// Логика масштабирования многокутника на заданный коэффициент
}
}
// Пример использования классов с помощью меню пользователя
public class Program
{
public static void Main()
{
// Создаем объекты Point, ColoredPoint, Line, ColoredLine, PolyLine
Point point = new Point(1, 2);
ColoredPoint coloredPoint = new ColoredPoint(3, 4, "Red");
Line line = new Line(new Point(1, 2), new Point(3, 4));
ColoredLine coloredLine = new ColoredLine(new Point(1, 2), new Point(3, 4), "Blue");
PolyLine polyLine = new PolyLine(new Point[] { new Point(1, 2), new Point(3, 4), new Point(5, 6) });
// Демонстрация работы классов с помощью меню пользователя
int choice;
do
{
Console.WriteLine("Меню:");
Console.WriteLine("1. Отобразить координаты точки");
Console.WriteLine("2. Отобразить цвет точки");
Console.WriteLine("3. Отобразить координаты линии");
Console.WriteLine("4. Отобразить цвет линии");
Console.WriteLine("5. Масштабировать многокутник");
Console.WriteLine("0. Выход");
Console.Write("Введите номер операции: ");
choice = Convert.ToInt32(Console.ReadLine());
switch (choice)
{
case 1:
Console.WriteLine($"Координаты точки: X={point.X}, Y={point.Y}");
break;
case 2:
Console.WriteLine($"Цвет точки: {coloredPoint.Color}");
break;
case 3:
Console.WriteLine($"Координаты линии: ({line.StartPoint.X}, {line.StartPoint.Y}) - ({line.EndPoint.X}, {line.EndPoint.Y})");
break;
case 4:
Console.WriteLine($"Цвет линии: {coloredLine.Color}");
break;
case 5:
Console.Write("Введите коэффициент масштабирования: ");
double scaleFactor = Convert.ToDouble(Console.ReadLine());
polyLine.Scale(scaleFactor);
Console.WriteLine("Многокутник успешно масштабирован.");
break;
case 0:
Console.WriteLine("Выход из программы.");
break;
default:
Console.WriteLine("Некорректный выбор операции.");
break;
}
Console.WriteLine();
} while (choice != 0);
}
}
Этот пример кода демонстрирует создание классов Point, ColoredPoint, Line, ColoredLine и PolyLine с соответствующими свойствами и методами. Программа также включает простое меню, которое позволяет пользователю выбрать операцию для демонстрации работы классов.