Пользователь вводит длину массивов. Заполнение массивов случайными числами - C#

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

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

Помогите доработать задачу В путем отсеивание из задачи А задачу Б (Язык С#) Пользователь вводит длину массивов. Заполнение массивов случайными числами. А) Составить третий массив. Заполнить массив числами, являющимися объединением первых двух массивов. Без дублирования в результирующем массиве. Пример: 1 массив: 123 2 массив: 345 3 массив: 12345 Б) Третий массив является пресечением множеств только тех элементов, которые есть и в первом и во втором массиве. Пример: 1 массив: 123 2 массив: 345 3 массив: 3 В) Третий массив, все элементы которого есть во втором, но не встречаются не в первом, не во втором. Пример: 1 массив: 123 2 массив: 345 3 массив: 1245 (Общее отсеивается) А)
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace n4a
  7. {
  8. class Program
  9. {
  10. static void Main(string[] args)
  11. {
  12. int n;
  13. string s = Console.ReadLine();
  14. n = Convert.ToInt32(s);
  15. int[] m = new int[n];
  16. int[] a = new int[n];
  17. int[] array = new int[n*2]; //В 2 раза больше чем исходные массивы
  18. Random rnd = new Random();
  19. Console.WriteLine("Массив 1:");
  20. for (int i = 0; i < m.Length; i++) //Заполнение массива m
  21. {
  22. a[i] = rnd.Next(10);
  23. m[i] = rnd.Next(10);
  24. Console.WriteLine(m[i]);
  25. }
  26. Console.WriteLine("Массив 2:");
  27. for (int i = 0; i < m.Length; i++) //Заполнение массива а
  28. {
  29. Console.WriteLine(a[i]);
  30. }
  31. for (int i = 0; i < m.Length; i++) //Запись массива "а" в конечный массив
  32. {
  33. array[i]= a[i];
  34. }
  35. int check = 0; // переменная для счетчика
  36. for (int i = 0; i < m.Length; i++) //Для увеличения счетчика check
  37. {
  38. for (int j = 0; j < m.Length; j++) //Проверка совпадений в массиве а и m, если совпадение есть, в ячейку массива m записывается ноль
  39. {
  40. if (a[check] == m[j])
  41. {
  42. m[j] = 0;
  43. }
  44. }
  45. check++;
  46. }
  47. int ground = 0; //счетчик для элементов массива m
  48. for (int i = array.Length/2; i<array.Length;i++)
  49. {
  50. array[i] = m[ground]; // запись массива m в конечный массив
  51. ground++;
  52. }
  53. Console.WriteLine("Объединённый массив:");
  54. for (int i = 0; i < array.Length; i++)
  55. {
  56. Console.WriteLine(array[i]);
  57. }
  58. Console.ReadKey();
  59. }
  60. }
  61. }
Б)
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace n4b
  7. {
  8. class Program
  9. {
  10. static void Main(string[] args)
  11. {
  12. int n;
  13. string s = Console.ReadLine();
  14. n = Convert.ToInt32(s);
  15. int[] m = new int[n];
  16. int[] a = new int[n];
  17. int[] array = new int[n*2]; //В 2 раза больше чем исходные массивы
  18. Random rnd = new Random();
  19. Console.WriteLine("Массив 1:");
  20. for (int i = 0; i < m.Length; i++) //Заполнение массива m
  21. {
  22. a[i] = rnd.Next(10);
  23. m[i] = rnd.Next(10);
  24. Console.WriteLine(m[i]);
  25. }
  26. Console.WriteLine("Массив 2:");
  27. for (int i = 0; i < m.Length; i++) //Заполнение массива а
  28. {
  29. Console.WriteLine(a[i]);
  30. }
  31. int check = 0; // переменная для счетчика
  32. for (int i = 0; i < m.Length; i++) //Для увеличения счетчика check
  33. {
  34. for (int j = 0; j < m.Length; j++) //Проверка совпадений в массиве а и m, если совпадение есть, в ячейку массива array записывается совпавшее число
  35. {
  36. if (a[check] == m[j])
  37. {
  38. array[i]= m[j];
  39. }
  40. }
  41. check++;
  42. }
  43. Console.WriteLine("Общий массив:");
  44. for (int i = 0; i < array.Length; i++)
  45. {
  46. Console.WriteLine(array[i]);
  47. }
  48. Console.ReadKey();
  49. }
  50. }
  51. }
Так же если это не трудно, хотел бы сделать так, чтобы в первой задаче отсеивание повторных чисел не выводило на экран ничего (В моей задачи я сделал чтобы вместо них выводит нули)

Решение задачи: «Пользователь вводит длину массивов. Заполнение массивов случайными числами»

textual
Листинг программы
  1. using System;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using System.Globalization;
  5. using System.Linq;
  6. using System.Security.Cryptography.X509Certificates;
  7. using System.Text;
  8. using System.Threading;
  9. using System.Threading.Tasks;
  10. using static System.Console;
  11.  
  12. namespace ConsoleApplication1
  13. {
  14.     class Program
  15.     {
  16.  
  17.   public static int [] CreateArray ()
  18.   {
  19.       Random random = new Random();
  20.      
  21.           WriteLine("\nInput array size\n");
  22.             int n = int.Parse(ReadLine());
  23.             int[] myArray=new int[n];
  24.       for (int i = 0; i < n; i++)
  25.       {
  26.           myArray[i] = random.Next(10);
  27.  
  28.       }
  29.                 return myArray;
  30.            
  31.   }
  32.  
  33.         public static int[] ArrayUnion(int [] arr1, int [] arr2)
  34.         {
  35.             int n = arr1.Length + arr2.Length;
  36.             int[] unArray = new int[n];
  37.             for (int i = 0; i < arr1.Length; i++)
  38.             {
  39.                 unArray[i] = arr1[i];
  40.             }
  41.             for (int i = 0; i < arr2.Length; i++)
  42.             {
  43.                 unArray[i + arr1.Length] = arr2[i];
  44.             }
  45.  
  46.             return unArray;
  47.         }
  48.  
  49.         public static void ArrayPrint(int[] arr)
  50.         {
  51.             WriteLine("Print  array:");
  52.             for(int i=0;i<arr.Length;i++)
  53.             {
  54.                 Write("{0}\t",arr[i]);
  55.             }
  56.  
  57.  
  58.         }
  59.  
  60.         public static int[] CrossArray(int[] arr1, int[] arr2)
  61.         {
  62.             int n = 0;
  63.  
  64.             for (int i = 0; i < arr1.Length; i++)
  65.             {
  66.                 for (int j = 0; j < arr2.Length; j++)
  67.                 {
  68.                     if(arr1[i]==arr2[j])
  69.                     n++;
  70.                 }
  71.                
  72.             }
  73.             int[] arr3 = new int[n];
  74.  
  75.             int z = 0;
  76.             for (int i = 0; i < arr1.Length; i++)
  77.             {
  78.                 for (int j = 0; j < arr2.Length; j++)
  79.                 {
  80.                     if (arr1[i] == arr2[j])
  81.                     {
  82.                         arr3[z] = arr1[i];
  83.                         z++;
  84.                     }
  85.                 }
  86.  
  87.             }
  88.          
  89.             return arr3;
  90.         }
  91.  
  92.  
  93.         public static ArrayList ArrayListCross (int[] arr1, int[] arr2)
  94.         {
  95.             int n = 0;
  96. ArrayList arrayList=new ArrayList();
  97.             foreach (var i in arr1)
  98.             {
  99.                 if (!arr2.Contains(i))
  100.                 {
  101.                     arrayList.Add(i);
  102.                 }
  103.  
  104.             }
  105.  
  106.             foreach (var i in arr2)
  107.             {
  108.                 arrayList.Add(i);
  109.             }
  110.             return arrayList;
  111.         }
  112.  
  113.  
  114.         public static ArrayList ArrayListCross1(int[] arr1, int[] arr2)
  115.         {
  116.             ArrayList arrayList = new ArrayList();
  117.  
  118.             ArrayList arrayList1 = new ArrayList();
  119.          
  120.                 foreach (var i in arr1)
  121.                 {
  122.                     if (!arr2.Contains(i))
  123.                     {
  124.                         arrayList.Add(i);
  125.                     }
  126.                 }
  127.  
  128.                 foreach (var i in arr2)
  129.                 {
  130.                     if (!arr1.Contains(i))
  131.                     {
  132.                         arrayList.Add(i);
  133.                     }
  134.                 }
  135.                      
  136.         return arrayList;
  137.     }
  138.  
  139.  
  140.         static void Main(string[] args)// метод мейн, точка входа в программу
  141.         {
  142.             int []arr1 = CreateArray();
  143.             ArrayPrint(arr1);
  144.             int[] arr2 = CreateArray();
  145.             ArrayPrint(arr2);
  146.             int [] arrUnion=ArrayUnion(arr1, arr2);
  147.             WriteLine("\nUnited array:");
  148.             ArrayPrint(arrUnion);
  149.             WriteLine();
  150.             ArrayPrint(CrossArray(arr1,arr2));
  151.             WriteLine();
  152.             //CrossArrayUnion( arr1, arr2);
  153.             // ArrayPrint(CrossArrayUnion(arr1,arr2));
  154.             foreach (var i in ArrayListCross( arr1,  arr2))
  155.             {
  156.                 Write(i+"\t");
  157.             }
  158.             WriteLine();
  159.             WriteLine("New method");
  160.             foreach (var i in ArrayListCross1(arr1, arr2))
  161.             {
  162.                 Write(i + "\t");
  163.             }
  164.             Console.ReadKey();
  165.         }
  166.     }
  167. }

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


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

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

10   голосов , оценка 4.1 из 5

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

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

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