Практикум по курсу "Алгоритмизация и программирование". Часть 1. Андрианова А.А - 54 стр.

UptoLike

class Program1
{
static void Main(string[] args)
{
int n, m, i;
int[] a, b, c;
Console.Write("Введите количество элементов первого массива:");
int.TryParse(Console.ReadLine(), out n);
Console.Write("Введите количество элементов второго массива:");
int.TryParse(Console.ReadLine(), out m);
if (n <= 0 || m <= 0)
{
Console.WriteLine("Введите положительное размеры");
return;
}
a = new int[n];
b = new int[m];
c = new int[n + m];
if (a == null || b == null || c == null)
{
Console.WriteLine("Запрошено большое количество памяти.");
Console.WriteLine("Попробуйте ввести меньшее количество.");
return;
}
Console.WriteLine("Введите элементы первого массива:");
for (i = 0; i < n; i++)
int.TryParse(Console.ReadLine(), out a[i]);
Console.WriteLine("Введите элементы второго массива:");
for (i = 0; i < m; i++)
int.TryParse(Console.ReadLine(), out b[i]);
int k = 0;
i = 0;
while (i < n && k < m)
if (a[i] < b[k])
{
c[i + k] = a[i];
i++;
}
else
{
c[i + k] = b[k];
k = k + 1;
}
for (; i < n; i++)
c[i + k] = a[i];
for (; k < m; k++)
c[i + k] = b[k];
Console.WriteLine("Объединенный массив:");
for (i = 0; i < n + m; i++)
Console.Write("{0} ", c[i]);
Console.WriteLine();
}
}
}
    class Program1
    {
        static void Main(string[] args)
        {
            int n, m, i;
            int[] a, b, c;
            Console.Write("Введите количество элементов первого массива:");
            int.TryParse(Console.ReadLine(), out n);
            Console.Write("Введите количество элементов второго массива:");
            int.TryParse(Console.ReadLine(), out m);
            if (n <= 0 || m <= 0)
            {
                Console.WriteLine("Введите положительное размеры");
                return;
            }
            a = new int[n];
            b = new int[m];
            c = new int[n + m];
            if (a == null || b == null || c == null)
            {
                Console.WriteLine("Запрошено большое количество памяти.");
                Console.WriteLine("Попробуйте ввести меньшее количество.");
                return;
            }
            Console.WriteLine("Введите элементы первого массива:");
            for (i = 0; i < n; i++)
                int.TryParse(Console.ReadLine(), out a[i]);
            Console.WriteLine("Введите элементы второго массива:");
            for (i = 0; i < m; i++)
                int.TryParse(Console.ReadLine(), out b[i]);
            int k = 0;
            i = 0;
            while (i < n && k < m)
                if (a[i] < b[k])
                {
                    c[i + k] = a[i];
                    i++;
                }
                else
                {
                    c[i + k] = b[k];
                    k = k + 1;
                }
            for (; i < n; i++)
                c[i + k] = a[i];
            for (; k < m; k++)
                c[i + k] = b[k];
            Console.WriteLine("Объединенный массив:");
            for (i = 0; i < n + m; i++)
                Console.Write("{0} ", c[i]);
            Console.WriteLine();
        }
    }
}