Преобразование типа из "int[*,*]" в "int[]" невозможно - C#

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

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

Листинг программы
  1. static int MatrixInput(string str = " ")
  2. {
  3. Console.WriteLine(str);
  4. int x;
  5. return x = Convert.ToInt32(Console.ReadLine());
  6. }
  7. static Random Random()
  8. {
  9. Random rnd = new Random();
  10. return rnd;
  11. }
  12. // Для одномерного массива
  13. static int [] FillMatrix (int n, Random rnd)
  14. {
  15. int[]A=new int[n];
  16.  
  17. for (int i = 0; i < A.Length; i++)
  18. {
  19. A[i] = rnd.Next(-10, 10);
  20. }
  21. return A;
  22. }
  23. static void MatrixOutPut(int[] A)
  24. {
  25. for (int i = 0; i < A.Length; i++)
  26. {
  27. Console.Write(A[i] + "\t");
  28. }
  29. Console.WriteLine();
  30. }
  31. static void Search(int[] A)
  32. {
  33. for (int i = 0; i < A.Length; i++)
  34. {
  35. if (A[i] < 0)
  36. {
  37. int n = A.Length;
  38. while (n != 0)
  39. {
  40. if (A[n - 1] < 0)
  41. {
  42. Console.WriteLine("Наибольший индекс отрицательного элемента: "+(n - 1));
  43. break;
  44. }
  45. else n--;
  46. }
  47. }
  48. }
  49. }
  50.  
  51. //для двумерных
  52. static int[,] FillMatrix(int a, int b, Random rnd)
  53. {
  54. int[,]A=new int[a,b];
  55. for (int i = 0; i < A.GetLength(0); i++)
  56. {
  57. for (int j = 0; j < A.GetLength(1); j++)
  58. {
  59. A[i, j] = rnd.Next(-10, 10);
  60. }
  61. }
  62. return A;
  63. }
  64. static void MatrixOutPut(int[,]A, char c)
  65. {
  66. for (int i = 0; i < A.GetLength(0); i++)
  67. {
  68. for (int j = 0; j < A.GetLength(1); j++)
  69. {
  70. Console.Write(A[i, j] +c );
  71. }
  72. Console.WriteLine();
  73. }
  74.  
  75. }
  76. static void Search(int[,] A)
  77. {
  78. Console.WriteLine("Введите номер столбца, где будем искать отрицательные элементы:");
  79. int j1 = Convert.ToInt32(Console.ReadLine());
  80. for (int i = 0; i < A.GetLength(0); i++)
  81. {
  82. if (A[i, j1] < 0)
  83. {
  84. int w = A.GetLength(0);
  85. while (w != 0)
  86. {
  87. if (A[w - 1, j1] < 0)
  88. {
  89. Console.WriteLine("Наибольший индекс отрицательного элемента "+(w - 1));
  90. break;
  91. }
  92. else w--;
  93. }
  94. }
  95. }
  96. }
  97. static void Main(string[] args)
  98. {
  99. // для одномерного
  100. int[] m = FillMatrix(MatrixInput("Введите размер одномерного массива "), Random());
  101. MatrixOutPut(m);
  102. Search(m);
  103.  
  104. // для двумерного
  105. int[,] p =FillMatrix(MatrixInput("Введите количество строк "), MatrixInput("Введите количество столбцов "), Random());
  106. Search(p);
  107. MatrixOutPut(p);
  108.  
  109. Console.ReadKey();
  110. }
  111. }
  112. }
Подчёркивает MatrixOutPut(p); подскажите, пожалуйста, в чём ошибка Ошибка 1 Наиболее подходящий перегруженный метод для "ConsoleApplication3.Program.MatrixOutPut(int[])" имеет несколько недопустимых аргументов C:\Users\Notebook\AppData\Local\Temporary Projects\ConsoleApplication3\Program.cs 137 17 ConsoleApplication3 Ошибка 2 Аргумент "1": преобразование типа из "int[*,*]" в "int[]" невозможно C:\Users\Notebook\AppData\Local\Temporary Projects\ConsoleApplication3\Program.cs 137 30 ConsoleApplication3
неактуально

Решение задачи: «Преобразование типа из "int[*,*]" в "int[]" невозможно»

textual
Листинг программы
  1. MatrixOutPut(p)

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


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

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

7   голосов , оценка 3.571 из 5

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

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

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