示例#1
0
        public void Problema2()
        {
            //Planteamiento
            int[]      entrada1      = { 2, 1, 4, 5 };
            int[]      salidapares   = { 2, 4 };
            int[]      salidaimpares = { 1, 5 };
            List <int> pares         = null;
            List <int> impares       = null;

            //Prueba
            OrderRange.build(entrada1, ref pares, ref impares);
            //Resultado
            CollectionAssert.AreEqual(salidapares, pares.ToArray());
            CollectionAssert.AreEqual(salidaimpares, impares.ToArray());
        }
示例#2
0
        // TODO: Switch these lists to some sort of intrusive linked list system
        private bool PrepareToUpdateSortedList <T> (ref int lastValidFrame, int currentFrame, List <T> targetList, ref OrderRange range)
        {
            if ((targetList.Count == Count) && (lastValidFrame == currentFrame))
            {
                return(false);
            }

            range = new OrderRange {
                Min = (Items.Count > 0) ? int.MaxValue : 0,
                Max = (Items.Count > 0) ? int.MinValue : 0
            };
            targetList.Clear();
            targetList.Capacity = Math.Max(Math.Max(targetList.Capacity, Items.Count), 16);
            lastValidFrame      = currentFrame;
            return(true);
        }
示例#3
0
        public void build()
        {
            int[]      cadena = { 1, 2, 4, 5, 6, 7, 8, 5, 4, 3 };
            OrderRange ts     = new OrderRange();

            try
            {
                // Act
                string result = ts.build(cadena);
                // Assert
                Assert.IsNotNull(result);
            }
            catch (Exception)
            {
                Assert.Fail();
            }
        }
示例#4
0
 public void Init()
 {
     _orderRange = new OrderRange();
 }
示例#5
0
        static void Main(string[] args)
        {
            ChangeString ChangeString = new ChangeString();
            OrderRange   OrderRange   = new OrderRange();
            MoneyParts   MoneyParts   = new Clases.MoneyParts();

            string cadena = "";
            int    nroEjercicio;

            int[] coleccion = null;

            Console.WriteLine("Escriba el nro de Ejercicio a probar 1, 2 o 3");
            nroEjercicio = Convert.ToInt32(Console.ReadLine());

            while (nroEjercicio == 1 || nroEjercicio == 2 || nroEjercicio == 3)
            {
                switch (nroEjercicio)
                {
                case 1:
                    Console.WriteLine("Cadena de Entrada: ");
                    cadena = Console.ReadLine();
                    Console.Write("");
                    Console.WriteLine("Cadena de Salida : " + ChangeString.build(cadena));
                    Console.WriteLine("Escriba el nro de Ejercicio a probar 1, 2 o 3");
                    nroEjercicio = Convert.ToInt32(Console.ReadLine());

                    break;

                case 2:
                    Console.WriteLine("Ingrese la coleccion de enteros separado por comas:");
                    cadena = Console.ReadLine();
                    var listaNumeros = cadena.Split(',');
                    coleccion = new int[listaNumeros.Count()];

                    for (int i = 0; i < listaNumeros.Length; i++)
                    {
                        coleccion[i] = Convert.ToInt32((listaNumeros[i].ToString()));
                    }
                    var resultList = OrderRange.build(coleccion);
                    Console.WriteLine(string.Join(",", resultList[0]));
                    Console.WriteLine(string.Join(",", resultList[1]));
                    Console.WriteLine("");
                    Console.WriteLine("Escriba el nro de Ejercicio a probar 1, 2 o 3");
                    nroEjercicio = Convert.ToInt32(Console.ReadLine());

                    break;

                case 3:
                    Console.WriteLine("Ingrese el monto en soles:");
                    cadena = Console.ReadLine();
                    var res = MoneyParts.build(cadena);

                    foreach (var item in res.Values)
                    {
                        Console.WriteLine(string.Join(",", item));
                    }
                    Console.WriteLine("");
                    Console.WriteLine("Escriba el nro de Ejercicio a probar 1, 2 o 3");
                    nroEjercicio = Convert.ToInt32(Console.ReadLine());

                    break;

                default:
                    break;
                }
            }
        }