Вставки, удаления, перестановки в массивах - C#
Формулировка задачи:
Переставить в обратном порядке часть одномерного массива между элементами с номерами k1 и k2, включая их.
Решение задачи: «Вставки, удаления, перестановки в массивах»
textual
Листинг программы
Console.WriteLine("Введите k1 и k2");
int k1 = int.Parse(Console.ReadLine());
int k2 = int.Parse(Console.ReadLine());
if (k1 == k2 || k1 > k2)
{
Console.WriteLine("Неверно введены значения");
}
else
{
Random rnd = new Random();
int n =10;
int[] arr = new int [n];
Console.Write("Исходный массив:\n");
for (int i = 0; i < n; i++)
{
arr[i] = rnd.Next(1, 50);
Console.Write(arr[i] + " ");
}
Console.WriteLine();
int j = k2;
int m = k2 - k1;
int[] arr2 = new int[k2 - k1+1]; //вспомогательный массив
for (int i = k1; i <= k2; i++)
{
arr2[m] = arr[i];
m--;
}
for (int i = k1; i <= k2; i++)
{
arr[i] = arr2[k2 - j];
j--;
}
Console.WriteLine("\nИзменённый массив: ");
foreach(int s in arr)Console.Write(s+" ");
}
Console.ReadKey();