using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Point
{
class Program
{
static void Main(string[] args)
{
int n;
double x;
double[,] pt;
int i, j;
double dblmax;
int p1, p2;
Console.Write("请输入点的个数:");
n = Convert.ToInt32(Console.ReadLine());
pt = new double[n, 2];
for (i = 0; i < pt.GetLength(0); i++)
{
Console.Write("请输入第{0}点的横坐标:", i + 1);
pt[i, 0] = Convert.ToDouble(Console.ReadLine());
Console.Write("请输入第{0}点的纵坐标:", i + 1);
pt[i, 1] = Convert.ToDouble(Console.ReadLine());
}
dblmax = 0;
p1 = 0;
p2 = 0;
for (i = 0; i < pt.GetLength(0) - 1; i++)
{
for (j = i + 1; j < pt.GetLength(0); j++)
{
x = bz(pt[i, 0], pt[j, 0], pt[i, 1], pt[j, 1]);
if ( x > dblmax)
{
dblmax = x;
p1 = i;
p2 = j;
}
}
}
Console.WriteLine("第{0}个点({1},{2})与第{3}个点({4},{5})之间的距离最大,为{6}", p1 + 1, pt[p1, 0], pt[p1, 1], p2 + 1, pt[p2, 0], pt[p2, 1], dblmax);
Console.ReadKey();
}
public static double bz(double x1,double x2,double y1,double y2)
{
return Math.Sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1));
}
}
}