编程实践5-10
编程实践5-10
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Dian { class Program { static void Main(string[] args) { double[,] a; double d,max; int b,p1,p2; Console.WriteLine("请输入点的个数:"); b = Convert.ToInt16(Console.ReadLine()); a = new double[b, 2]; for (int i = 1; i <= b; i++) { Console.Write("请输入第{0}点的横坐标:", i + 1); a[i, 0] = Convert.ToDouble(Console.ReadLine()); Console.Write("请输入第{0}点的纵坐标:", i + 1); a[i, 1] = Convert.ToDouble(Console.ReadLine()); } max = 0; p1 = 0; p2 = 0; for (int i = 0; i < a.GetLength(0) - 1; i++) { for (int j = i + 1; j < a.GetLength(0); j++) { d = Math.Sqrt((a[j, 0] - a[i, 0]) * (a[j, 0] - a[i, 0]) + (a[j, 1] - a[i, 1]) * (a[j, 1] - a[i, 1])); if (d > max) { max = d; p1 = i; p2 = j; } } } Console.WriteLine("第{0}个点({1},{2})与第{3}个点({4},{5})之间的距离最大,为{6}", p1 + 1, a[p1, 0],a[p1, 1], p2 + 1, a[p2, 0], a[p2, 1], max); Console.ReadKey(); } } }