Определить номера строк матрицы A совпадающие с массивом D - C#
Формулировка задачи:
Здравствуйте! Дано задание: Определить номера тех строк целочисленной матрица A[,], которые совпадают с массивом D[K]. Если таких нет выдать сообщение. Я написала код, но он выводит сообщения, что совпадения есть, но не их количество(хотя в самом задании нужно выдать номера строк, если я правильно поняла).
В чем же проблема?
Console.Write("Введите размер квадратной матрицы: "); int r = int.Parse(Console.ReadLine()); Console.WriteLine("Матрица А"); int[,] Mat = new int[r, r]; Random random = new Random(); int rand; for (int i = 0; i < r; i++) { for (int j = 0; j < r; j++) { rand = random.Next(0,3); Mat[i, j] = rand; } } for (int i = 0; i < r; i++) { for (int j = 0; j < r; j++) { Console.Write(" {0} ",Mat[i, j]); } Console.WriteLine(); } int[] Mas = new int[r]; Random rnd = new Random(); Console.WriteLine(); Console.WriteLine("Массив D:"); for (int i = 0; i < r; i++) { Mas[i] = rnd.Next(0, 3); Console.Write(" {0} ",Mas[i]); } bool nekon=true; for (int i=0; i<r; i++) { for(int j=0; j<r; j++) { while (Mat[i,j]!=Mas[i]) { nekon=false; } if (nekon==true) { Console.WriteLine(); Console.WriteLine("есть совпадение "+i); Console.ReadLine(); } else Console.WriteLine("нет совпадений"); } }
Решение задачи: «Определить номера строк матрицы A совпадающие с массивом D»
textual
Листинг программы
Console.Write("Введите размер квадратной матрицы: "); int r = int.Parse(Console.ReadLine()); Console.WriteLine("Матрица А"); int[,] Mat = new int[r, r]; Random random = new Random(); int rand; for (int i = 0; i < r; i++) { for (int j = 0; j < r; j++) { rand = random.Next(0, 3); Mat[i, j] = rand; } } for (int i = 0; i < r; i++) { for (int j = 0; j < r; j++) { Console.Write(" {0} ", Mat[i, j]); } Console.WriteLine(); } int[] Mas = new int[r]; Random rnd = new Random(); Console.WriteLine(); Console.WriteLine("Массив D:"); for (int i = 0; i < r; i++) { Mas[i] = rnd.Next(0, 3); Console.Write(" {0} ", Mas[i]); } //bool nekon = true; int count = 0; for (int i = 0; i < r; i++) { bool equal = true; for (int j = 0; j < r; j++) { if (Mat[i, j] != Mas[i]) { equal = false; } } if (equal) { Console.WriteLine(); Console.WriteLine("есть совпадение в строке " + i); count++; } } Console.WriteLine(count > 0 ? $"Всего совпадений {count}" : "нет совпадений"); Console.ReadKey();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д