Пример #1
0
    public bool IsNull()
    {
        MatrizIterator mi = new MatrizIterator(this);

        for (mi.begin(); !mi.end(); mi.next())
        {
            if (this[mi.Linha, mi.Coluna] != 0)
            {
                return(false);
            }
        }

        return(true);
    }
Пример #2
0
    public static Matriz operator*(Matriz m, int k)
    {
        MatrizIterator mi  = new MatrizIterator(m);
        Matriz         res = new Matriz(mi.Linhas, mi.Colunas);

        int lin, col;

        for (mi.begin(); !mi.end(); mi.next())
        {
            lin           = mi.Linha; col = mi.Coluna;
            res[lin, col] = m[lin, col] * k;
        }

        return(res);
    }
Пример #3
0
    public static Matriz operator-(Matriz ml, Matriz mr)
    {
        MatrizIterator mi  = new MatrizIterator(ml, mr);
        Matriz         res = new Matriz(mi.Linhas, mi.Colunas);

        int lin, col;

        for (mi.begin(); !mi.end(); mi.next())
        {
            lin           = mi.Linha; col = mi.Coluna;
            res[lin, col] = ml[lin, col] - mr[lin, col];
        }

        return(res);
    }
Пример #4
0
    public override string ToString()
    {
        System.Text.StringBuilder sb = new System.Text.StringBuilder(50);

        int lastLine = 0;

        MatrizIterator mi = new MatrizIterator(this);

        for (mi.begin(); !mi.end(); mi.next())
        {
            if (lastLine != mi.Linha)
            {
                lastLine = mi.Linha; sb.Append("\n");
            }

            sb.AppendFormat("{0,6} ", this[mi.Linha, mi.Coluna]);
        }

        return(sb.ToString());
    }
Пример #5
0
    public bool IsTranspost(Matriz m)
    {
        if (this.Linhas != m.Colunas || this.Colunas != m.Linhas)
        {
            return(false);
        }

        MatrizIterator mi = new MatrizIterator(this);
        int            lin, col;

        for (mi.begin(); !mi.end(); mi.next())
        {
            lin = mi.Linha; col = mi.Coluna;
            if (this[lin, col] != m[col, lin])
            {
                return(false);
            }
        }

        return(true);
    }
Пример #6
0
    public override bool Equals(object m)
    {
        Matriz mm = (Matriz)m;

        if (this.Colunas != mm.Colunas || this.Linhas != mm.Linhas)
        {
            return(false);
        }

        MatrizIterator mi = new MatrizIterator(this);

        int lin, col;

        for (mi.begin(); !mi.end(); mi.next())
        {
            lin = mi.Linha; col = mi.Coluna;
            if (this[lin, col] != mm[lin, col])
            {
                return(false);
            }
        }

        return(true);
    }