Сравнение значений элементов строки и столбца (не отрабатывает) - C#
Формулировка задачи:
Здравствуйте! Никак не могу добиться толку, чтот с i j видимо путаю, подскажите плиз k - задаю с клавы и передаю в метод
и собственно метод, который не получается
пока что пробую удалить хотя-бы столбец (
но получается какая-то #опа, уже как только не крутил эти i j ...удаляет совсем не то, что нужно((
подскажите плиз, где я накосячил
где
Нужно: Удалить из массива k-тую строку и j-тый столбец, если их значения совпадают Делаю рандомныйквадратный
массив, так чтоб значения каждой строки совпадали со значениями столбцов(чтоб руки не мучить)Random r = new Random(DateTime.Now.Millisecond); for (int i = 0; i < n; ++i) for (int j = 0; j < m; ++j) { a[i, j] = r.Next(-99, 99); a[j, i] = a[i, j];//для case 5 }
int k_str = int.Parse(Console.ReadLine()); IfStrCol(a, ref n, ref m, k_str);
static void IfStrCol(int[,] a, ref int n, ref int m, int k_str) { for (int j = 0; j < m; j++) { bool f = true; for (int i = 0; i < n; i++) { if (a[i, j] != a[k_str, j])//(a[j, k_str] != a[j, i]) { f = false; break; } } if (f) for (; j < m; j++) for (int i = 0; i < n; i++) a[i, j] = a[i, j + 1]; m--; } }
Решение задачи: «Сравнение значений элементов строки и столбца (не отрабатывает)»
textual
Листинг программы
//предаю (массив, n и m(которые равны), k-ю строку) static void IfStrCol(int[,] a, ref int n, ref int m, int k_str) { for (int j = 0; j < m; j++) { bool f = true; for (int i = 0; i < n; i++) { if (a[k_str, j] != a[i, j]) { f = false; break; } } if (f) for (; j < m; j++) for (int i = 0; i < n; i++) a[i, j] = a[i, j + 1]; m--; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д