Создать класc Angle для роботы с углами на плоскости - C#
Формулировка задачи:
Создать класc Angle для роботы с углами на плоскости, задаваемими величиной в градусах и минутах. Обязательно должны быть реалезованы: перевод в радианы , приведение к диапазону 0-360, увеличение и уменшение угла на заданную величину, получение синуса , сравнение углов.
ребята помогите пожалуйста, очень - очень надо***((
Решение задачи: «Создать класc Angle для роботы с углами на плоскости»
textual
Листинг программы
using System; class Angle { private int minutes; // Чтобы не заморачиватся с дробными числами, угол храню в минутах. public Angle(int minutes) // Конструктор, принимающий значение в минутах. { this.minutes = minutes; } // Метод возвращает число в градусах. public double GetDegrees() { double degrees = minutes / 60.0 % 360; // Приводим к диапозону от -360 до 360. return degrees < 0 ? 360.0 + degrees : degrees; // Приводим градусы к диапазону 0-360. } // Метод возвращает число в радианах. public double GetRadians() { return GetDegrees() * Math.PI / 180.0; // Приводим градусы в радианы. } // Метод получения синуса угла. public double GetSinus() { return Math.Sin(GetRadians()); } // Даем возможность суммировать углы. (К примеру a = b + c, где a, b, c - переменные типа Angle) public static Angle operator +(Angle left, Angle right) { return new Angle(left.minutes + right.minutes); } // Даем возможность вычитать углы. (К примеру: a = b - c, где a, b, c - переменные типа Angle) public static Angle operator -(Angle left, Angle right) { return new Angle(left.minutes - right.minutes); } // Следующие операторы дают возможность сравнить углы. (К примеру: a > b, где a, b - переменные типа Angle) public static bool operator >(Angle left, Angle right) { return left.minutes > right.minutes; } public static bool operator <(Angle left, Angle right) { return left.minutes < right.minutes; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д