Определить номер столбца содержащий наименьший элемент матрицы через массив - C#
Формулировка задачи:
Определить номер столбца содержащий наименьший элемент матрицы через массив
Решение задачи: «Определить номер столбца содержащий наименьший элемент матрицы через массив»
textual
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace ConsoleApplication4
- {
- class Program
- {
- static void Main(string[] args)
- {
- Console.WriteLine("Введите размерность матрицы (Количество строк, затем количество столбцов).");
- int n = 0, m = 0;
- while (n <= 0 || m <= 0)
- {
- Console.WriteLine("n, m > 0 !!!");
- n = int.Parse(Console.ReadLine());
- m = int.Parse(Console.ReadLine());
- }
- //Инициализировали матрицу и задали занчения.
- int[,] matrix = new int[n,m];
- for (int i = 0; i < n; ++i)
- for (int j = 0; j < m; ++j)
- {
- Console.WriteLine("Введите [{0},{1}] элемент", i+1, j+1);
- matrix[i, j] = int.Parse(Console.ReadLine());
- }
- int[] min_col_count = SerchColMinElem(matrix, n, m);
- Console.WriteLine("Наименьший элемент(ы) встречен(ы) в столбце(столбцах): ");
- for (int i = 0; i < min_col_count.Length; ++i)
- Console.WriteLine(min_col_count[i].ToString() + " ");
- Console.ReadKey();
- }
- static int[] SerchColMinElem(int[,] matrix, int n, int m)
- {
- int temp_min = matrix[0,0];
- int count = 0;
- int[] min_count_col = new int[1];
- for (int i = 0; i < n; ++i)
- for (int j = 0; j < m; ++j)
- if (matrix[i, j] < temp_min)
- {
- temp_min = matrix[i, j];
- min_count_col[count] = j;
- }
- else
- if (matrix[i, j] == temp_min)
- {
- bool this_col_is_present = false;
- for (int k = 0; k < min_count_col.Length; ++k)
- if (j == min_count_col[k])
- {
- this_col_is_present = true;
- break;
- }
- if (this_col_is_present)
- continue;
- else
- {
- count++;
- Array.Resize(ref min_count_col, count + 1);
- min_count_col[count] = j;
- }
- }
- return min_count_col;
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д