Насколько можно оптимизировать этот программный код? - C#

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

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

Листинг программы
  1. static void Main(string[] args)
  2. {
  3. int[] massiv1 = new int[10];
  4. Random rand = new Random();
  5. int j;
  6. int s = 0;
  7. for (int i = 0; i < 10; i++)
  8. {
  9. j = rand.Next(-10, 10);
  10. massiv1[i] = j;
  11. if(massiv1[i] > 0)
  12. s = s + 1;
  13. Console.WriteLine("" + massiv1[i]);
  14. Console.Write("\n");
  15. }
  16. Console.WriteLine("s=" + s);
  17. int[] massiv2 = new int[s];
  18. int k = 0;
  19. for (int i = 0; i < 10; i++)
  20. {
  21. if (massiv1[i] > 0)
  22. {
  23. massiv2[k] = massiv1[i];
  24. k++;
  25. }
  26. }
  27. for (k = 0; k < s; k++)
  28. {
  29. Console.WriteLine("l=" + massiv2[k]);
  30. }
  31. Console.ReadKey();
  32. }

Решение задачи: «Насколько можно оптимизировать этот программный код?»

textual
Листинг программы
  1. using System;
  2. using System.Linq;
  3.  
  4. namespace ConsoleApplication11
  5. {
  6.     class Program
  7.     {
  8.         static void print(int[] arr)
  9.         {
  10.             string str = "[";
  11.             for (int i = 0; i < arr.Length; i++)
  12.             {
  13.                 if(i != arr.Length -1)
  14.                 str += arr[i]+",";
  15.                 else str += arr[i];
  16.             }
  17.             str += "]";
  18.             Console.Write("{0} ", str);
  19.             Console.WriteLine();
  20.         }
  21.         static void Main(string[] args)
  22.         {
  23.                 int[] massiv1 = new int[10];
  24.  
  25.                 Random rand = new Random();
  26.                 int j = 0;
  27.                 int s = 0;
  28.                 foreach (int a in massiv1)
  29.                 {
  30.                     massiv1[j++] = rand.Next(-10, 10);
  31.                 }
  32.                 s = massiv1.Where(x=> x > 0).Count();
  33.                 int[] massiv2 = new int[s];
  34.                 var k = massiv1.Where(x => x > 0);
  35.                 j = 0;
  36.                 foreach(int a in k)
  37.                 massiv2[j++] = (int)a;
  38.  
  39.                 Console.WriteLine("Массив 1: ");
  40.                 print(massiv1);
  41.  
  42.                 Console.WriteLine("s = {0}",s);
  43.  
  44.                 Console.WriteLine("Массив 2:");
  45.                 print(massiv2);
  46.  
  47.                 Console.ReadKey();
  48.         }
  49.     }
  50. }

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


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

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

7   голосов , оценка 4.571 из 5

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

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

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