static void Main(string[] args)
        {
            do
            {
                Console.Clear();
                GeometricProgression prog = new GeometricProgression();
                Random rnd = new Random();
                GeometricProgression[] progArray = new GeometricProgression[rnd.Next(5, 16)];
                for (int i = 0; i < progArray.Length; i++)
                {
                    progArray[i] = new GeometricProgression(rnd.Next(0, 10) + rnd.NextDouble(), rnd.Next(1, 5) + rnd.NextDouble());
                }
                int step = rnd.Next(3, 16);
                Console.WriteLine("\nИнформация о всех прогрессиях:");
                Array.ForEach(progArray, y => Console.WriteLine(y.ToString()));
                Console.WriteLine("Уникальная:" + prog.ToString());

                Console.WriteLine("\nВсе последовательности из массива, у которых элемент с номером step больше, чем у отдельной последовательности:");
                Array.ForEach(Array.FindAll(progArray, x => x[step] > prog[step]), y => Console.WriteLine(y.ToString()));

                Console.WriteLine("\nВыводим сумму первых step членов");
                Array.ForEach(progArray, x => Console.WriteLine(x.ToString() + $"\tСумма: {x.GetSum(step):f2}"));

                Console.WriteLine("\nНажмите Escape, если хоитте выйти\nИли любую другую клавишу, если хотите продолжить");
            } while (Console.ReadKey().Key != ConsoleKey.Escape);
        }
 static void Main(string[] args)
 {
     while (true)
     {
         int n = new Random().Next(5, 16);
         GeometricProgression geometric = new GeometricProgression(new Random().NextDouble() * 10, new Random().NextDouble() * (5 - 0.0001) + 0.0001);
         Console.WriteLine("Главная последовательность: ");
         Console.WriteLine(geometric.ToString());
         Console.WriteLine();
         int step = new Random().Next(3, 16);
         GeometricProgression[] arr = new GeometricProgression[n];
         Console.WriteLine($"У этих последовательностей элемент с номером {step} больше чем у главной: ");
         for (int i = 0; i < n; i++)
         {
             double _start     = new Random().NextDouble() * 10;
             double _increment = new Random().NextDouble() * (5 - 0.0001) + 0.0001;
             arr[i] = new GeometricProgression(_start, _increment);
             if (arr[i][step] > geometric[step])
             {
                 Console.WriteLine(arr[i].ToString());
             }
         }
         Console.WriteLine("\nВесь массив: ");
         for (int i = 0; i < n; i++)
         {
             Console.WriteLine(arr[i].ToString());
             Console.WriteLine($"Сумма первых {step} членов: {arr[i].GetSum(step):f3}");
         }
         Console.ReadLine();
     }
 }