Проверка элементов матрицы - C#
Формулировка задачи:
Добрый день, нужна помощь по двумерным массивом (матрица)
Есть матрица размером 3 строки 4 столбца, заполнена она следующим образом:
1 1 3 3
1 2 2 3
2 2 3 3
Мне нужно сравнить каждые элементы матрицы, с рядом стоящими, если элемент не равен с рядом стоящим, то k++.
Например мы берем элемент 1 строки 2 столбца = 1, и элемент 1 строки 3 столбца = 3, проверяем равны ли они между собой, если не равны, то k++;
Вот мой код программы, запоролся именно на этом месте, на лишние переменные не обращайте внимания, они для дальнейшей разработки. Подскажите пожалуйста, как лучше организовать этот процесс.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { double tol = 0.2; int N, M, vis = 3, dlina = 1, k = 0; Console.WriteLine("Введите размерность подвального этажа NxM: "); N = Convert.ToInt32(Console.ReadLine()); M = Convert.ToInt32(Console.ReadLine()); int[,] Podval = new int[N, M]; Console.WriteLine("Введите N последующих строк содержащих по M натуральных чисел, не превосходящих M x N, задающих номер помещения, к которому относится данная клетка: "); for (int i = 0; i < N; i++) { for (int j = 0; j < M; j++) { Podval[i, j] = Convert.ToInt32(Console.ReadLine()); } } Console.WriteLine("План подвального этажа. Каждое натуральное число соответствует номеру помещения, к которому относится данная клетка!"); for (int i = 0; i < N; i++) { for (int j = 0; j < M; j++) { Console.Write(Podval[i, j] + "\t"); } Console.WriteLine("\n"); } for (int j = 0; j < M; j++) { for (int i = 0; i < N; i++) { if (Podval[i, j] != Podval[i + 1, j]) { k++; } } } Console.WriteLine(k); Console.ReadKey(); } } }
Решение задачи: «Проверка элементов матрицы»
textual
Листинг программы
class Program { static void Main(string[] args) { int[,] m = { { 1, 1, 3, 3 }, { 1, 2, 2, 3 }, { 2, 2, 3, 3 } }; for (int i = 0; i <= 2; i++) { for (int j = 0; j <= 3; j++) Console.Write(m[i, j]+"\t"); Console.Write("\n"); } int k = 0; for (int i = 0; i <= 2; i++) for (int j = 0; j < 3; j++) if (m[i, j] != m[i, j + 1]) k++; Console.WriteLine("K = " + k); Console.ReadKey(true); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д