Преобразовать массив - C# (178667)

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

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

Преобразовать массив таким образом, чтобы в первой его половине располагались элементы, стоявшие в нечетных позициях, а во второй половине –элементы, стоявшие в четных позициях.
Листинг программы
  1. static int[] F1(int[] A)
  2. {
  3. int n;
  4. n = A.GetLength(0);
  5. if (A.GetLength(0) % 2 == 0)
  6. {
  7. for (int i = 2; i < n / 2; i = i + 2)
  8. {
  9. int B = A[i];
  10. A[i] = A[n - i + 1];
  11. A[n - i + 1] = B;
  12. }
  13. }
  14. else
  15. {
  16. for (int i = 0; i < (n - 1) / 2; i = i + 2)
  17. { int B = A[i];
  18. A[i] = A[n - i];
  19. A[n - i] = B;
  20. }
  21. Console.Write(A);
  22. }
  23. return A; }
  24. static void Main(string[] args)
  25. {int n = 8;
  26. int[] A = new int[n];
  27. Random ran = new Random();
  28. Console.WriteLine("Массив");
  29. for (int i = 0; i < n; i++)
  30. { A[i] = ran.Next(-2, 2);
  31. Console.Write("{0}", A[i] + " ");}
  32. int imax;
  33. Console.WriteLine("Преобразованный массив");
  34. Console.WriteLine(F1(A).ToString());
  35. Console.ReadKey(); }}}
Пожалуйста, помогите найти ошибку

Решение задачи: «Преобразовать массив»

textual
Листинг программы
  1. using System;
  2. using System.Linq;
  3.  
  4. namespace ConsoleApp1
  5. {
  6.     class Program
  7.     {
  8.         static void Main(string[] args)
  9.         {
  10.             Random r = new Random();
  11.             Console.Write("N = "); int n = int.Parse(Console.ReadLine());
  12.             int[] a = Enumerable.Range(0, n).Select(v => r.Next(0, 100)).ToArray();
  13.             Console.WriteLine($"Исходный массив: {String.Join(" ", a)}");
  14.             a = (String.Join(" ", a.Where((v, i) => i % 2 == 0)) + " " + String.Join(" ", a.Where((v, i) => i % 2 != 0)))
  15.                 .Split(' ').Select(v => int.Parse(v)).ToArray();
  16.             Console.WriteLine($"Результат: {String.Join(" ", a)}");
  17.             Console.ReadKey();
  18.         }
  19.     }
  20. }

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


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

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

8   голосов , оценка 3.625 из 5

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

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

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