Среди всех точек заданного множества найти точку, лежащую левее всех на оси ОХ - C#
Формулировка задачи:
Дано множество A из N точек на плоскости. Среди всех точек этого множества найти точку, лежащую левее всех на оси ОХ (вывести ее номер и значения координат).
Решение задачи: «Среди всех точек заданного множества найти точку, лежащую левее всех на оси ОХ»
textual
Листинг программы
- using System;
- using System.Linq;
- namespace ConsoleApplication2
- {
- struct Point:IComparable<Point>
- {
- public int X, Y;
- public int CompareTo(Point other)
- {
- if (other.X == X)
- return 0;
- if (other.X < X)
- return 1;
- return -1;
- }
- public override string ToString()
- {
- return string.Format("X={0};Y={1}", X, Y);
- }
- public Point(int x,int y)
- {
- X = x;
- Y = y;
- }
- }
- class Program
- {
- static void Main(string[] args)
- {
- var points = new[]
- {
- new Point(2,3) ,
- new Point(4,5),
- new Point(-8,0),
- new Point(-1,2),
- new Point(-3,4),
- new Point(-5,6),
- new Point(-2,6),
- };
- foreach (var p in points)
- {
- Console.WriteLine(p);
- }
- var min = points.Min(p => p);
- Console.WriteLine("Точка левее всех на оси OX {0}",min);
- Console.WriteLine("Ее индекс {0}",Array.FindIndex(points,p=>p.Equals(min)));
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д