Найти наибольшее расстояние между точками - C#
Формулировка задачи:
Дана вещественная матрица М (2х100).Рассматривая элементы массива M как координаты точек на плоскости, найти D - наибольшее расстояние между этими точками.
Сам цикл примерно такой (по моему мнению):
Console.WriteLine("наибольшее расстояние между точками = "+max);
Ответ желательно целой программой, если не сложно
int max=0;
For (int i=0;i<100;++i)
{
For (int j=0;i<100;++j)
d=sqrt(sqr(m(0,i)-m(0,j)) + (m(1,i) - m(1,j));
if (max>d) max=d
}Решение задачи: «Найти наибольшее расстояние между точками»
textual
Листинг программы
using System;
class Program
{
static void Main()
{
Console.WriteLine("===== Исходная матрица =====");
Random r = new Random();
double[,] mas = new double[100, 2];
double temp1 = 0, temp2 = 0, sum = 0, maxX = 0, maxY = 0;
for (int i = 0; i < 100; ++i)
{
for(int j = 0; j < 2; ++j)
{
mas[i, j] = r.NextDouble() * 100;
if (j == 0)
{
Console.Write("{0:f2}", mas[i, j]);
temp1 = mas[i, j];
}
else
{
Console.Write("\t{0:f2}", mas[i, j]);
temp2 = mas[i, j];
}
if (Math.Abs(temp1 - temp2) > sum)
{
sum = Math.Abs(temp1 - temp2);
maxX = temp1;
maxY = temp2;
}
}
Console.WriteLine();
}
Console.WriteLine("Наибольшее расстояние находится между {0:f2} и {1:f2} ", maxX, maxY);
Console.ReadKey();
}
}