Чтение матрицы и запись в файл - C#

Узнай цену своей работы

Формулировка задачи:

Считать матрицу из файла, найти минимальный элемент каждого столбца и записать результат в выходной файл

Решение задачи: «Чтение матрицы и запись в файл»

textual
Листинг программы
class Program
    {
        static int[,] GetMatrixFromString(string s)
        {
            int[,] result;
 
            var lines = s.Split('\n');
            var rowNumber = lines.Length;
            var columnNumber = lines.First().Split(' ').Length;
            result = new int[rowNumber, columnNumber];
            for (int i = 0; i < rowNumber; i++)
            {
                string[] columns = lines[i].Split(' ');
                for (int j = 0; j < columnNumber; j++)
                {
                    result[i,j] = int.Parse(columns[j]);
                }
 
            }
 
            return result;
        }
 
        static int[] ColumnsMinimum(int [,] inputMatrix)
        {
            int[] result = new int [ inputMatrix.GetLength(1)];
 
            for (int j = 0; j < inputMatrix.GetLength(1); j++) // Циккл по столбцам
            {
                int min = inputMatrix[0,j];
                for (int i = 1; i < inputMatrix.GetLength(0); i++) // По строкам
                {
                    if (inputMatrix[i,j] < min)
                        min = inputMatrix[i,j];
                }
                result[j] = min;
            }
 
            return result;
        }
        static void Main(string[] args)
        {
            StreamReader streamReader = new StreamReader("input.txt");
            string matrixString = streamReader.ReadToEnd();
            streamReader.Close();
            int[,] matrix = GetMatrixFromString(matrixString);
            int[] minimums = ColumnsMinimum(matrix);
            string resultString = minimums.Aggregate("", (previous, current) => previous + " " + current);
            StreamWriter streamWriter = new StreamWriter("output.txt");
            streamWriter.WriteLine(resultString);
            streamWriter.Close();
            Console.WriteLine("Press any key to exit...");
            Console.ReadKey();
        }
    }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5