Другие языки программирования и технологии

Мальчики! Помогите пожалуйста с задачей на языке программирования C#

Дан двумерный массив размером N * M, заполненный случайным образом. Поменять местами строку и столбец, в которых находится минимальный элемент
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Задание_ответы_MailRU
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("\n");
Console.Write("Введите размерность массива N: ");
int n = int.Parse(Console.ReadLine());
Console.Write("Введите размерность массива M: ");
int m = int.Parse(Console.ReadLine());
int[,] mas = new int[n, m];
Random rnd = new Random();
Console.WriteLine("\n");
Console.WriteLine("Исходный массив: ");
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++)
{
mas[i, j] = rnd.Next(-100, 100);
Console.Write("{0,4:0.#}", mas[i, j]);
}
Console.WriteLine();
}
int min = mas[0, 0];
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
if (min > mas[i,j]) min = mas[i, j];
Console.WriteLine("\nМинимальный элемент: " + min + "\n");
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
if (mas[i,j] == min)
for (int k = 0; k < n; k++)
{
int c = mas[k, j];
mas[k, j] = mas[i, k];
mas[i, k] = c;
}
Console.WriteLine("Результат: ");
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++)
{
Console.Write("{0,4:0.#}", mas[i, j]);
}
Console.WriteLine();
}
Console.ReadKey();
}
}
}
АТ
Арман Тлеубергенов
4 688
Лучший ответ
using System;

namespace Application
{
class MainClass
{
public static void Main (string[] args)
{
int[,] mas = new int[7, 8];
Random gen = new Random ();
int indexMinRow = 0, indexMinCol = 0;
for (int i = 0; i < mas.GetLength(0); i++)
{
for (int j = 0; j < mas.GetLength(1); j++)
{
mas [i, j] = gen.Next (1, 40);
if (mas [i, j] < mas [indexMinRow, indexMinCol])
{
indexMinRow = i;
indexMinCol = j;
}
Console.Write ("{0,3}", mas [i, j]);
}
Console.WriteLine ();
}
Console.WriteLine ("\nIndex min: [{0},{1}]", indexMinRow, indexMinCol);
}
}
}