Определить номера строк матрицы A совпадающие с массивом D - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! Дано задание: Определить номера тех строк целочисленной матрица A[,], которые совпадают с массивом D[K]. Если таких нет выдать сообщение. Я написала код, но он выводит сообщения, что совпадения есть, но не их количество(хотя в самом задании нужно выдать номера строк, если я правильно поняла). В чем же проблема?
Листинг программы
  1. Console.Write("Введите размер квадратной матрицы: ");
  2. int r = int.Parse(Console.ReadLine());
  3. Console.WriteLine("Матрица А");
  4. int[,] Mat = new int[r, r];
  5. Random random = new Random();
  6. int rand;
  7. for (int i = 0; i < r; i++)
  8. {
  9. for (int j = 0; j < r; j++)
  10. {
  11. rand = random.Next(0,3);
  12. Mat[i, j] = rand;
  13. }
  14. }
  15. for (int i = 0; i < r; i++)
  16. {
  17. for (int j = 0; j < r; j++)
  18. {
  19. Console.Write(" {0} ",Mat[i, j]);
  20. }
  21. Console.WriteLine();
  22. }
  23. int[] Mas = new int[r];
  24. Random rnd = new Random();
  25. Console.WriteLine();
  26. Console.WriteLine("Массив D:");
  27. for (int i = 0; i < r; i++)
  28. {
  29. Mas[i] = rnd.Next(0, 3);
  30. Console.Write(" {0} ",Mas[i]);
  31. }
  32. bool nekon=true;
  33. for (int i=0; i<r; i++)
  34. {
  35. for(int j=0; j<r; j++)
  36. {
  37. while (Mat[i,j]!=Mas[i])
  38. {
  39. nekon=false;
  40. }
  41. if (nekon==true)
  42. {
  43. Console.WriteLine();
  44. Console.WriteLine("есть совпадение "+i);
  45. Console.ReadLine();
  46. }
  47. else Console.WriteLine("нет совпадений");
  48. }
  49. }

Решение задачи: «Определить номера строк матрицы A совпадающие с массивом D»

textual
Листинг программы
  1. Console.Write("Введите размер квадратной матрицы: ");
  2.             int r = int.Parse(Console.ReadLine());
  3.             Console.WriteLine("Матрица А");
  4.             int[,] Mat = new int[r, r];
  5.             Random random = new Random();
  6.             int rand;
  7.             for (int i = 0; i < r; i++)
  8.             {
  9.                 for (int j = 0; j < r; j++)
  10.                 {
  11.                     rand = random.Next(0, 3);
  12.                     Mat[i, j] = rand;
  13.                 }
  14.             }
  15.             for (int i = 0; i < r; i++)
  16.             {
  17.                 for (int j = 0; j < r; j++)
  18.                 {
  19.                     Console.Write(" {0} ", Mat[i, j]);
  20.                 }
  21.                 Console.WriteLine();
  22.             }
  23.  
  24.             int[] Mas = new int[r];
  25.             Random rnd = new Random();
  26.             Console.WriteLine();
  27.             Console.WriteLine("Массив D:");
  28.             for (int i = 0; i < r; i++)
  29.             {
  30.                 Mas[i] = rnd.Next(0, 3);
  31.                 Console.Write(" {0} ", Mas[i]);
  32.             }
  33.             //bool nekon = true;
  34.  
  35.             int count = 0;
  36.  
  37.             for (int i = 0; i < r; i++)
  38.             {
  39.                 bool equal = true;
  40.                 for (int j = 0; j < r; j++)
  41.                 {
  42.                     if (Mat[i, j] != Mas[i])
  43.                     {
  44.                         equal = false;
  45.                     }
  46.                 }
  47.                 if (equal)
  48.                 {
  49.                     Console.WriteLine();
  50.                     Console.WriteLine("есть совпадение в строке " + i);
  51.                     count++;
  52.                 }
  53.             }
  54.             Console.WriteLine(count > 0 ? $"Всего совпадений {count}" : "нет совпадений");
  55.  
  56.             Console.ReadKey();

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.182 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы