/*Раздел 9 номер 4(console) * 4. Создать новый двумерный массив, исключив из переданного массива совпадающие столбцы. * (Совпадающие столбцы – столбцы, у которых все соответствующие элементы равны друз другу). * При формировании нового массива оставить только первый из каждого набора совпадающих столбцов. */ //ЗАДАЧА РЕШЕНА static void Main(string[] args) { Console.WriteLine("Прочитать данные из файла? (ответ - yes/no)"); switch (Console.ReadLine()) { case "yes": string fileName = Inp_Out.ReadValueFromConsole("имя файла"); List <List <double> > data = Inp_Out.InpTXT(fileName); Console.WriteLine("Исходные данные:"); Inp_Out.Arr2Print_Console <double>(DataProcessing.ListToArray(data)); Console.WriteLine("Обработанный массив:"); Inp_Out.Arr2Print_Console <double>(DataProcessing.ListToArray(DataProcessing.ColumEject(data))); break; case "no": Console.WriteLine("Введите количество строк массива:"); int rowCount = int.Parse(Console.ReadLine()); Console.WriteLine("Введите двухмерный массив (через пробел или запятую) по строкам:"); List <List <double> > consData = new List <List <double> >(); int i = 0; while (i <= rowCount) { consData.Add(DataProcessing.ArrayToList(Inp_Out.StrToArray <double>(Console.ReadLine()))); i++; } Console.WriteLine("Обработанный массив:"); Inp_Out.Arr2Print_Console <double>(DataProcessing.ListToArray(DataProcessing.ColumEject(consData))); break; default: Console.WriteLine("команда не распoзнана"); break; } Console.ReadKey(); }
static void Main(string[] args) { Console.WriteLine("Cчитать данные из файла?(yes/no)"); switch (Console.ReadLine()) { case "yes": string fileName = Inp_Out.ReadValueFromConsole("имя файла"); double[,] data = DataProcessing.ListToArray(Inp_Out.InpTXT(fileName)); Console.WriteLine("Список точек:" + Environment.NewLine + "X Y"); Inp_Out.Arr2Print_Console <double>(data); //заполняем данными из файла массив точек Points[] points = new Points[data.GetLength(0)]; for (int r = 0; r < data.GetLength(0); r++) { Points pnt = new Points(data[r, 0], data[r, 1], r + 1); points[r] = pnt; } if (BiggestTriangle.IsTrianglePossible(points)) { Console.WriteLine("Самый треугольник получается из точек: " + BiggestTriangle.MaxTriangleSquare(points)); } else { Console.WriteLine("из таких точек невозможно построить треугольник"); } break; case "no": Console.WriteLine("Введите количество ваших точек:"); int pointCount = int.Parse(Console.ReadLine()); Points[] pointsConsole = new Points[pointCount]; int i = 0; while (i < pointCount) { Console.Write("Введите коордитаны точки {0}: X = ", i + 1); double x = double.Parse(Console.ReadLine()); Console.Write(" Y = "); double y = double.Parse(Console.ReadLine()); //заполняем массив точек данными из файла Points pnt = new Points(x, y, i + 1); pointsConsole[i] = pnt; i++; } if (BiggestTriangle.IsTrianglePossible(pointsConsole)) { Console.WriteLine("Самый треугольник получается из точек: " + BiggestTriangle.MaxTriangleSquare(pointsConsole)); } else { Console.WriteLine("из таких точек невозможно построить треугольник"); } break; default: Console.WriteLine("команда не распoзнана"); break; } Console.ReadKey(); }