Насколько можно оптимизировать этот программный код? - C#
Формулировка задачи:
static void Main(string[] args) { int[] massiv1 = new int[10]; Random rand = new Random(); int j; int s = 0; for (int i = 0; i < 10; i++) { j = rand.Next(-10, 10); massiv1[i] = j; if(massiv1[i] > 0) s = s + 1; Console.WriteLine("" + massiv1[i]); Console.Write("\n"); } Console.WriteLine("s=" + s); int[] massiv2 = new int[s]; int k = 0; for (int i = 0; i < 10; i++) { if (massiv1[i] > 0) { massiv2[k] = massiv1[i]; k++; } } for (k = 0; k < s; k++) { Console.WriteLine("l=" + massiv2[k]); } Console.ReadKey(); }
Решение задачи: «Насколько можно оптимизировать этот программный код?»
textual
Листинг программы
using System; using System.Linq; namespace ConsoleApplication11 { class Program { static void print(int[] arr) { string str = "["; for (int i = 0; i < arr.Length; i++) { if(i != arr.Length -1) str += arr[i]+","; else str += arr[i]; } str += "]"; Console.Write("{0} ", str); Console.WriteLine(); } static void Main(string[] args) { int[] massiv1 = new int[10]; Random rand = new Random(); int j = 0; int s = 0; foreach (int a in massiv1) { massiv1[j++] = rand.Next(-10, 10); } s = massiv1.Where(x=> x > 0).Count(); int[] massiv2 = new int[s]; var k = massiv1.Where(x => x > 0); j = 0; foreach(int a in k) massiv2[j++] = (int)a; Console.WriteLine("Массив 1: "); print(massiv1); Console.WriteLine("s = {0}",s); Console.WriteLine("Массив 2:"); print(massiv2); Console.ReadKey(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д