Создать массив, элементами которого являются расстояния между точками - C#
Формулировка задачи:
Написать подпрограмму, реализующую решение задачи: На плоскости заданы своими координатами n точек. Создать массив
размером n(n-1), элементами которого являются расстояния от каждой из точек
до n -1 других.
Решение задачи: «Создать массив, элементами которого являются расстояния между точками»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace laba7 { internal class Program { private static void Main(string[] args) { int n; while (!int.TryParse(Console.ReadLine(),out n)) {Console.Write("Error");} var pnt = new Point[n]; var rnd = new Random(); for (int i = 0; i < n; i++) { pnt[i] = new Point(rnd.Next(1, 20), rnd.Next(1, 20)); Console.WriteLine(pnt[i].x + "\t" + pnt[i].y); } var mas = new double[n * (n - 1)]; int count = 0; for (var i = 0; i < n; i++) { var p = new Point(); p = pnt[0]; pnt[0] = pnt[i]; pnt[i] = p; for (var j = 1; j < n; j++) { mas[count] = (double)Math.Sqrt(Math.Pow((pnt[0].x - pnt[j].x), 2) + Math.Pow((pnt[0].y - pnt[j].y), 2)); count++; } } for (int i = 0; i < n * (n - 1); i++) { Console.Write("{0:F2}"+"\t",mas[i]); } Console.ReadKey(); } } internal class Point { public int x; public int y; public Point(int x, int y) { this.x = x; this.y = y; } public Point() { } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д