Как выполнить проверку на принадлежность расположенности точки на окружности - C#
Формулировка задачи:
Здравствуйте!
Помогите разобраться с вопросом,пожалуйста.
У нас есть массив размером [N,2] ,N вводится пользователем.
Массив заполняется вещественными рандомными числами ,такими ,что эти числа расположены на окружности радиуса R(R вводится ) с центром в (0,0).
Уравнение окружности: X^2+Y^2=R^2
Как выполнить проверку на принадлежность расположенности точки на окружности?
метод,с созданным массивом из рандомных чисел.
static void Main(string[] args)
{
uint n;
double r;
getData(out n, out r);
double[,] massiv;
CreateMatrix(n, out massiv, r);
}
private static void getData(out uint n, out double r)
{
do { Console.WriteLine("Vvedie chislo n:"); }
while (!uint.TryParse(Console.ReadLine(), out n));
do { Console.WriteLine("Vvedie chislo r:"); }
while (!double.TryParse(Console.ReadLine(), out r));
}
private static void CreateMatrix(uint n, out double[,] massiv, double r)
{
Random s = new Random();
massiv = new double[n, 2];
for (int i = 0; i < n; ++i)
{
Console.WriteLine();
for (int j = 0; j < 2; ++j)
{
massiv[i, j] = (-r) + (r + r) * s.NextDouble();
Console.Write(massiv[i, j] + "\t");
}
}
}Решение задачи: «Как выполнить проверку на принадлежность расположенности точки на окружности»
textual
Листинг программы
static void NextRandomOnCircle(double radius,out double x,out double y)
{
Random rnd = new Random(DateTime.Now.Millisecond);
double phi = 2*Math.PI*rnd.NextDouble();
y = radius * Math.Sin(phi);
x = radius * Math.Cos(phi);
}