コード例 #1
0
        static string TiposDeSucesion(TipoSucesion tipo)
        {
            string str = "";

            if (tipo == TipoSucesion.NINGUNO)
            {
                str = "[NINGUNO]";
            }
            else
            {
                if ((tipo & TipoSucesion.CRECIENTE) == TipoSucesion.CRECIENTE)
                {
                    str += "[CRECIENTE]";
                }
                if ((tipo & TipoSucesion.NO_CRECIENTE) == TipoSucesion.NO_CRECIENTE)
                {
                    str += "[NO CRECIENTE]";
                }
                if ((tipo & TipoSucesion.DECRECIENTE) == TipoSucesion.DECRECIENTE)
                {
                    str += "[DECRECIENTE]";
                }
                if ((tipo & TipoSucesion.NO_DECRECIENTE) == TipoSucesion.NO_DECRECIENTE)
                {
                    str += "[NO DECRECIENTE]";
                }
            }
            return(str);
        }
コード例 #2
0
        static TipoSucesion TipoSucesionFuncion(Func <int, int> funcion)
        {
            TipoSucesion tipo = TipoSucesion.CRECIENTE | TipoSucesion.DECRECIENTE | TipoSucesion.NO_CRECIENTE | TipoSucesion.NO_DECRECIENTE;

            int nPrevia;
            int nActual;

            nPrevia = funcion(1);
            for (int i = 2; i < 10; i++)
            {
                nActual = funcion(i);

                if (!(nPrevia < nActual))
                {
                    //No cumple con creciente
                    tipo &= ~TipoSucesion.CRECIENTE;
                }

                if (!(nPrevia > nActual))
                {
                    //No cumple con decreciente
                    tipo &= ~TipoSucesion.DECRECIENTE;
                }

                if (!(nPrevia <= nActual))
                {
                    //No cumple con no decreciente
                    tipo &= ~TipoSucesion.NO_DECRECIENTE;
                }

                if (!(nPrevia >= nActual))
                {
                    //No cumple con no creciente
                    tipo &= ~TipoSucesion.NO_CRECIENTE;
                }
                nPrevia = nActual;
            }
            return(tipo);
        }