Пример #1
0
        public override void Leer(StreamReader lector)
        {
            string[] filas;
            string[] elemsFila;
            int      f = 0;

            cantColumnas = -1;
            filas        = MA.LeerMatriz(lector);
            cantFilas    = filas.Length;
            Filas        = new ParamVector[cantFilas];

            foreach (string fila in filas)
            {
                ParamVector vector = new ParamVector();
                vector.Definicion = Definicion;
                elemsFila         = MA.ObtenerElementosDeLaFila(fila);
                if (cantColumnas == -1)
                {
                    cantColumnas = elemsFila.Length;
                }
                else
                if (elemsFila.Length != cantColumnas)
                {
                    throw new Exception(Mensajes.MatrizTieneFilaEnDeDistintaLongitud(Definicion.Nombre, f));
                }

                VerificarTiposCorrectos(f, elemsFila);
                vector.EstablecerValor(elemsFila);
                Filas[f] = vector;
                f++;
            }
        }
Пример #2
0
        //Genera un parametro segun el tipo que sea.
        public Parametro GenerarParametro()
        {
            Parametro salida = null;

            if( EsMatriz )
                salida = new ParamMatriz();
            if( EsVector )
                salida = new ParamVector();
            if( EsLista )
                salida = new ParamLista();
            if( EsElemento )
                salida = new Elem();
            salida.Definicion = this;
            return salida;
        }
Пример #3
0
        public override void Leer( StreamReader lector )
        {
            string[] filas;
            string[] elemsFila;
            int f = 0;
            cantColumnas = -1;
            filas = MA.LeerMatriz( lector );
            cantFilas = filas.Length;
            Filas = new ParamVector[cantFilas];

            foreach( string fila in filas )
            {
                ParamVector vector = new ParamVector();
                vector.Definicion = Definicion;
                elemsFila = MA.ObtenerElementosDeLaFila( fila );
                if( cantColumnas==-1 )
                    cantColumnas = elemsFila.Length;
                else
                    if( elemsFila.Length!=cantColumnas )
                        throw new Exception( Mensajes.MatrizTieneFilaEnDeDistintaLongitud( Definicion.Nombre, f ) );

                VerificarTiposCorrectos( f, elemsFila );
                vector.EstablecerValor( elemsFila );
                Filas[f] = vector;
                f++;
            }
        }