Получить массив, являющийся «разностью» двух исходных - C#

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

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

Ввести два одномерных массива A(n), B(m), получить массив C(k), являющийся «разностью» исходных массивов. Преобразовать массив таким образом, чтобы сначала располагались все элемен¬ты, равные нулю, а потом — все остальные (порядок следования элементов не менять).

Решение задачи: «Получить массив, являющийся «разностью» двух исходных»

textual
Листинг программы
        static void Main(string[] args)
        {
            const int size = 5;
            int[] first = new int[size];
            int[] second = new int[size];
            int[] third = new int[size];
 
            for (int i = 0; i < size; i++)
            {
                Console.WriteLine("Enter first: ");
                first[i] = int.Parse(Console.ReadLine());
            }
 
            for (int i = 0; i < size; i++)
            {
                Console.WriteLine("Enter second: ");
                second[i] = int.Parse(Console.ReadLine());
            }
 
            // считаем разность
            for (int i = 0; i < size; i++)
            {
                third[i] = first[i] - second[i];
            }
                        
            int c = 0;            
            int[] temp = new int[5];            
            int[] fourth = new int[5];
            int y = 0;
            
            for(int i = 0; i < third.Length; i++)
            {
                if (third[i] == 0)
                    c++; // узнаем кол-во нулей
                else
                {
                    temp[y] = third[i]; // в этот массив добавляются элементы, которые != 0
                    y++;
                }
            }            
 
            int x = 0;
 
            for (int j = 0; j < fourth.Length; j++)
            {
                if (j < c)
                    fourth[j] = 0; // нули ставятся в начало
                else
                {
                    fourth[j] = temp[x]; // когда нули закончились, то в этот массив добавляются элементы из массива temp
                    x++;
                }
            }
 
            for (int i = 0; i < fourth.Length; i++)
            {
                Console.WriteLine(fourth[i]);
            }
        }

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


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

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

9   голосов , оценка 4.222 из 5
Похожие ответы