Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.11.2021, 19:35   #1
Арам25
Новичок
Джуниор
 
Регистрация: 15.11.2021
Сообщений: 2
По умолчанию Перегрузка

Помогите пожалуйста перегрузить конструктор

class Program
{
static void Main(string[] args)
{
double f;// увеличение треугольника
double d;//угол вращения
double x;//координата по x
double y;//координата по y
double k;//сдвиг треугольника вниз
double l;//сдвиг треугольника в лево
double r;//сдвиг треугольника вправо
double v;// сдвиг треугольника вверх

Console.WriteLine("Введите значение x0 для точки А:");
x = Convert.ToDouble(Console.ReadLine() );
Console.WriteLine("Введите значение y0 для точки А:");
y = Convert.ToDouble(Console.ReadLine() );

var a = new Tochka(x, y);

Console.WriteLine("Введите значение x1 для точки В:");
x = Convert.ToDouble(Console.ReadLine() );
Console.WriteLine("Введите значение y1 для точки В:");
y = Convert.ToDouble(Console.ReadLine() );
var b = new Tochka(x, y);

Console.WriteLine("Введите значение x2 для точки C:");
x = Convert.ToDouble(Console.ReadLine() );
Console.WriteLine("Введите значение y2 для точки C:");
y = Convert.ToDouble(Console.ReadLine() );
var c = new Tochka(x, y);

var T = new Treugolnik(a, b, c);
T.exit();

Console.WriteLine("Сдвиг вверх на:");
v = Convert.ToDouble(Console.ReadLine() );
T.sd_up(v);
T.exit();

Console.WriteLine("Сдвиг вниз на:");
k = Convert.ToDouble(Console.ReadLine() );
T.sd_down(k);
T.exit();

Console.WriteLine("Сдвиг влево на:");
l = Convert.ToDouble(Console.ReadLine() );
T.sd_left(l);
T.exit();

Console.WriteLine("Сдвиг вправо на:");
r = Convert.ToDouble(Console.ReadLine() );
T.sd_right(r);
T.exit();

Console.WriteLine("Увеличение на:");
f = Convert.ToDouble(Console.ReadLine() );
T.sd_rad(f);
T.exit();

Console.WriteLine("Введите угол вращения d:");
d = Convert.ToDouble(Console.ReadLine() );
T.sd_alfa(d);
T.exit();
}
}


class Tochka
{
public double x0, y0, x1, y1, x2, y2;

public Tochka(double x, double y)
{
x0 = x;
y0 = y;
x1 = x;
y1 = y;
x2 = x;
y2 = y;
}
}


class Treugolnik
{

public Tochka a { set; get; }
public Tochka b { set; get; }
public Tochka c { set; get; }

public Treugolnik(Tochka _a, Tochka _b, Tochka _c) //конструктор
{
a = _a;
b = _b;
c = _c;
}
public double R(Tochka _a, Tochka _b)
{
return Convert.ToDouble(Math.Sqrt(Math.Pow (_a.x0 - _b.x1, 2) + Math.Pow(_a.y0 - _b.y1, 2))); //
}

public void sd_alfa(double d) //поворот на угол d
{
var M = new Tochka((a.x0 + b.x1 + c.x2) / 3, (a.y0 + b.y1 + c.y2) / 3);
a.x0 = M.x0 + Convert.ToDouble(R(M, a) * Math.Cos(d));
a.y0 = M.y0 - Convert.ToDouble(R(M, a) * Math.Sin(d));
b.x1 = M.x1 + Convert.ToDouble(R(M, b) * Math.Cos(d));
b.y1 = M.y1 - Convert.ToDouble(R(M, b) * Math.Sin(d));
c.x2 = M.x2 + Convert.ToDouble(R(M, c) * Math.Cos(d));
c.x2 = M.x2 - Convert.ToDouble(R(M, c) * Math.Sin(d));
}

public void sd_up(double v) //сдвиг верх
{
a.y0 = a.y0 + v; b.y1 = b.y1 + v; c.y2 = c.y2 + v;
}

public void sd_down(double k) //сдвиг вниз
{
a.y0 = a.y0 - k; b.y1 = b.y1 - k; c.y2 = c.y2 - k;
}

public void sd_left(double l) //сдвиг влево
{
a.x0 = a.x0 - l; b.x1 = b.x1 - l; c.x2 = c.x2 - l;
}

public void sd_right(double r) //сдвиг вправо
{
a.x0 = a.x0 + r; b.x1 = b.x1 + r; c.x2 = c.x2 + r;
}

public void sd_rad(double f) //увелечение на f
{
a.x0 = a.x0 + f; a.y0 = a.y0 + f;

b.x1 = b.x1 + f; b.y1 = b.y1 + f;

c.x2 = c.x2 + f; c.y2 = c.y2 + f;
}

public void exit() //вывод координат
{
Console.WriteLine("a(x,y)={0},{1}\n b(x,y)={2},{3}\nc(x,y)={4},{5}", a.x0, a.y0, b.x1, b.y1, c.x2, c.y2); ; ;
Console.ReadKey();
}
}
Арам25 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перегрузка в с++ McToNy Общие вопросы C/C++ 2 17.12.2012 20:06
Перегрузка McToNy Общие вопросы C/C++ 8 15.12.2012 09:25
[C++]перегрузка Nadinka______ Помощь студентам 3 13.09.2011 19:16
Перегрузка Паыел Общие вопросы C/C++ 1 07.12.2010 16:59
Перегрузка в C++ Паыел Общие вопросы C/C++ 0 07.12.2010 16:26