Помогите найти ошибку. Элементы, которые присутствуют в массиве А, но отсутствуют в массиве В - C#

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

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

Доброго времени суток. Неверно выводится массив С - заносятся уникальные числа массива А и числа которые есть в А и В, а задание: элементы, которые присутствуют в массиве А, но отсутствуют в массиве В, сортировка пузырьком. Помогите пожалуйста найти и исправить ошибку сам код:
Листинг программы
  1. namespace laba3
  2. {
  3. class Program
  4. {
  5. static void Main(string[] args)
  6. {
  7. int M, N; // Инициализируем переменные M и N (размеры массивов A и B)
  8. Console.WriteLine("Введи размер массива A");
  9. M = Convert.ToInt32(Console.ReadLine());
  10. Console.WriteLine("Введи размер массива B");
  11. N = Convert.ToInt32(Console.ReadLine());
  12. Random r = new Random(); // Инициализируем переменную r (задаем случайное число)
  13. double t1 = Environment.TickCount; // Замеряем начало работы
  14. int[] A = new int[M]; // Инициализируем массив A размером M
  15. for (int i = 0; i < M; i++)// Заполняем массив случайными числами в диапазоне от 0 до 100
  16. A[i] = r.Next(0, 100);
  17. int buf1; /// Сортируем массив A
  18. for (int i = 0; i < M - 1; i++)
  19. {
  20. for (int j = i + 1; j < M; j++)
  21. {
  22. if (A[i] > A[j])
  23. {
  24. buf1 = A[i];
  25. A[i] = A[j];
  26. A[j] = buf1;
  27. }
  28. }
  29. }
  30. Console.WriteLine("Исходный массив A"); // Выводим массив A на экран
  31. for (int i = 0; i < M; i++)
  32. Console.Write(" " + A[i]);
  33. Console.WriteLine(" ");
  34. int[] B = new int[N]; // Инициализируем массив B размером N
  35. for (int i = 0; i < N; i++) // Заполняем массив случайными числами в диапазоне от 0 до 100
  36. B[i] = r.Next(0, 100);
  37. int buf2; // Сортируем массив B
  38. for (int i = 0; i < N - 1; i++)
  39. {
  40. for (int j = i + 1; j < N; j++)
  41. {
  42. if (B[i] > B[j])
  43. {
  44. buf2 = B[i];
  45. B[i] = B[j];
  46. B[j] = buf2;
  47. }
  48. }
  49. }
  50. Console.WriteLine("Исходный массив B"); // Выводим массив B на экран
  51. for (int i = 0; i < N; i++)
  52. Console.Write(" " + B[i]);
  53. Console.WriteLine(" ");
  54. int s = 0; // Инициализируем переменную s, равную номеру элемента в массиве C
  55. int[] C = new int[A.Length];
  56. for (int i = 0; i < M; i++) // Сравниваем элементы массивов A и B, ищем элементы, имеющиеся только в А
  57. {
  58. for (int j = 0; j < N; j++)
  59. {
  60. if (A[i] != B[j])
  61. {
  62. int count = 0;
  63. for (int l = 0; l < s + 1; l++)
  64. {
  65. if (A[i] == C[l])
  66. count++;
  67. else
  68. continue;
  69. }
  70. if (A[i] == 0)
  71. count--;
  72. if (count == 0)
  73. {
  74. C[s] = A[i];
  75. s++;
  76. break;
  77. }
  78. }
  79. }
  80. }
  81. if (s == 0)
  82. Console.WriteLine("Уникальные числа в массиве А отсутствуют");
  83. else
  84. {
  85. Console.WriteLine("Числа которые есть только в А");
  86. for (int i = 0; i < s; i++)
  87. {
  88. Console.Write(" " + C[i]);
  89. }
  90. Console.WriteLine(" ");
  91. double t2 = Environment.TickCount; // Замеряем конец работы
  92. Console.WriteLine("Продолжительность работы программы = {0} сек. ", (t2 - t1) / 1000); // Выводим продолжительность работы на экран
  93. }
  94. Console.ReadKey(true);
  95. }
  96. }
  97. }

Решение задачи: «Помогите найти ошибку. Элементы, которые присутствуют в массиве А, но отсутствуют в массиве В»

textual
Листинг программы
  1. class Program
  2.     {
  3.         public static void BubbleSort(ref int[] mas)
  4.         {
  5.             int buf = 0;
  6.             for (int i = 0; i < mas.Length - 1; i++)
  7.             {
  8.                 for (int j = i + 1; j < mas.Length; j++)
  9.                 {
  10.                     if (mas[i] > mas[j])
  11.                     {
  12.                         buf = mas[i];
  13.                         mas[i] = mas[j];
  14.                         mas[j] = buf;
  15.                     }
  16.                 }
  17.             }
  18.         }
  19.  
  20.         public static void View(int[] mas)
  21.         {
  22.             for (int i = 0; i < mas.Length; i++)
  23.             {
  24.                 Console.Write(mas[i] + " ");
  25.             }
  26.             Console.WriteLine();
  27.         }
  28.  
  29.         public static void Exist(int[] mas, int[] mas1, ref int[] res)
  30.         {
  31.             int buf = 0;
  32.             for (int i = 0; i < mas.Length; i++)
  33.             {
  34.                 if (!mas1.Contains(mas[i]))
  35.                 {
  36.                     res[buf] = mas[i];
  37.                     buf++;
  38.                 }
  39.             }
  40.         }
  41.  
  42.         static void Main(string[] args)
  43.         {
  44.             Random rand = new Random();
  45.             Console.Write("Введите размерность массива: ");
  46.             int count = int.Parse(Console.ReadLine());
  47.             int[] A = new int[count];
  48.             int[] B = new int[count];
  49.             int[] C = new int[count];
  50.             for (int i = 0; i < count; i++)
  51.             {
  52.                 A[i] = rand.Next(0, 100);
  53.                 B[i] = rand.Next(0, 100);
  54.             }
  55.             Console.WriteLine("Массив А:");
  56.             View(A);
  57.             Console.WriteLine("Массив B:");
  58.             View(B);
  59.  
  60.             BubbleSort(ref A);
  61.             BubbleSort(ref B);
  62.  
  63.             Console.WriteLine("Массив А:");
  64.             View(A);
  65.             Console.WriteLine("Массив B:");
  66.             View(B);
  67.  
  68.             Exist(A, B, ref C);
  69.             Console.WriteLine("Массив C:");
  70.             View(C);
  71.  
  72.             Console.ReadKey();
  73.         }

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


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

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

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

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

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

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