当前位置: 首页>>代码示例>>C++>>正文


C++ Matriz::setElemento方法代码示例

本文整理汇总了C++中Matriz::setElemento方法的典型用法代码示例。如果您正苦于以下问题:C++ Matriz::setElemento方法的具体用法?C++ Matriz::setElemento怎么用?C++ Matriz::setElemento使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Matriz的用法示例。


在下文中一共展示了Matriz::setElemento方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: Matriz

Matriz *Matriz::potenciaMatriz(int exp)const {
    try {
        if(exp < 0) throw(6);
        Matriz *mat = new Matriz(this->quantidadeDeLinhas,this->quantidadeDeColunas);


        for(int linha=0; linha<quantidadeDeLinhas; linha++)
            for(int coluna=0; coluna<quantidadeDeColunas; coluna++)
            {
                mat->setElemento(linha,coluna,this->getElemento(linha,coluna));   // copia MAT = THIS;
            }


        if(exp == 0) { //expoente igual a zero todos valores sao iguais a 1
            for(int linha=0; linha<quantidadeDeLinhas; linha++)
                for(int coluna=0; coluna<quantidadeDeColunas; coluna++)
                    mat->setElemento(linha,coluna,1);
        }
        else {
            for(int cont=1; cont < exp; cont++) //limite e o expoente
                *(mat) = (*(mat)) * (*(this));

        }

        return mat;

    } catch(int valorErro) {
        throw valorErro;
    }
    catch(std::bad_alloc&) {
        throw(0);
    }
}
开发者ID:adyjunior,项目名称:adyjrpucgo,代码行数:33,代码来源:Matriz.cpp

示例2: QString

Matriz* Matriz::operator *(Matriz const * const mat)const{ //CERTO
    if( quantidadeDeColunas  != mat->getQuantidadeDeLinhas() )throw QString("Nao e possivel fazer a multiplicacao das matrizes");
    try{
        Matriz *aux = new Matriz(quantidadeDeLinhas, mat->getQuantidadeDeColunas());
        int a=0,b;
        for(int i=0; i<quantidadeDeLinhas; i++){
            b=0;
            for(int j=0; j<mat->getQuantidadeDeColunas(); j++){
                int valor=0;
                for (int k=0;k<quantidadeDeColunas;k++){
                    valor += this->getElemento(i,k)*mat->getElemento(k,j);
                }
                aux->setElemento(valor,a,b++);
            }
            a++;
        }
        return aux;
    }
    catch(std::bad_alloc&){
        throw QString("Vai comprar memoria");
    }
    catch(QString &erro){
        throw QString("Matriz auxiliar nao Criada nao podemos adicionar as matrizes");
    }
}
开发者ID:juniorleaoo,项目名称:QtCreator,代码行数:25,代码来源:Matriz.cpp

示例3: arquivoMatriz

Matriz *Persistencia::recuperar(std::string const &nomeDoArquivoNoDisco)const{

	std::ifstream arquivoMatriz(nomeDoArquivoNoDisco.c_str());

	try{

		if(!arquivoMatriz.is_open()) throw(4);//arquivo nao pode ser aberto
		int linha, coluna,a;
		arquivoMatriz>>linha;
		arquivoMatriz>>coluna;
		Matriz *matriz = new Matriz(linha,coluna);
		for(int i=0; i<linha; i++)
			for(int j=0; j<coluna; j++){
				arquivoMatriz>>a;
				matriz->setElemento(i,j,a);
			}
		arquivoMatriz.close();
		return matriz;

	}catch(int valorErro){
		if(valorErro != 4)
		arquivoMatriz.close();
		throw valorErro;
	}catch(std::bad_alloc&){
		arquivoMatriz.close();
		throw(0);
	}


}
开发者ID:adyjunior,项目名称:adyjrpucgo,代码行数:30,代码来源:Persistencia.cpp

示例4: eMatrizAntiSimetrica

bool Matriz::eMatrizAntiSimetrica()const {
    try {

        Matriz *matTrans = new Matriz(this->quantidadeDeLinhas,this->quantidadeDeColunas);
        Matriz *matOposta = new Matriz(this->quantidadeDeLinhas,this->quantidadeDeColunas);

        matTrans = this->matrizTransposta();

        for(int linha=0; linha<quantidadeDeLinhas; linha++)
            for(int coluna=0; coluna<quantidadeDeColunas; coluna++) {
                int inverso = this->getElemento(linha,coluna)*-1;
                matOposta->setElemento(linha,coluna,inverso);//calcula oposta
            }

        bool ret= *matTrans == *matOposta;//compara transposta com oposta
        delete matTrans;
        delete matOposta;

        return ret;

    } catch(int valorErro) {
        throw valorErro;
    }
    catch(std::bad_alloc&) {
        throw(0);
    }
}
开发者ID:adyjunior,项目名称:adyjrpucgo,代码行数:27,代码来源:Matriz.cpp

示例5: matrizTransp

Matriz* Matriz::matrizTransp()const{ //CERTO
    Matriz *aux = new Matriz(quantidadeDeColunas,quantidadeDeLinhas);
    for(int i=0;i<getQuantidadeDeLinhas();i++){
            for(int j =0;j<getQuantidadeDeColunas();j++){
                int valor=this->getElemento(i,j);
                aux->setElemento(valor,j,i);

            }
        }
    return aux;
}
开发者ID:juniorleaoo,项目名称:QtCreator,代码行数:11,代码来源:Matriz.cpp

示例6: potencia

Matriz* Matriz::potencia(int n)const{ //CERTO
    try{
        Matriz *aux = new Matriz(quantidadeDeLinhas, quantidadeDeColunas);
        if(n==0){
            for(int linha = 0; linha<quantidadeDeLinhas;linha++)
                for(int coluna = 0;coluna<quantidadeDeColunas;coluna++){
                    if(linha == coluna) aux->setElemento(1,linha,coluna);
                    if(linha != coluna) aux->setElemento(0,linha,coluna);
                }
            return aux;
        }
        for(int linha = 0; linha<quantidadeDeLinhas;linha++)
            for(int coluna = 0;coluna<quantidadeDeColunas;coluna++){
                aux->setElemento(this->getElemento(linha,coluna),linha,coluna);
            }
        while(n>1){
            aux = (*this) *(aux);
            n--;
        }
        return aux;
    }catch(std::bad_alloc&){
        throw QString("Vai comprar memoria");
    }
}
开发者ID:juniorleaoo,项目名称:QtCreator,代码行数:24,代码来源:Matriz.cpp

示例7: throw

Matriz *Matriz::operator-(Matriz const &matriz)const {
    try {
        if(		matriz.getQuantidadeLinhas()!= quantidadeDeLinhas ||
                matriz.getQuantidadeColunas() != quantidadeDeColunas) throw (2);

        Matriz *matSub = new Matriz(this->quantidadeDeLinhas,this->quantidadeDeColunas);

        for(int linha=0; linha<quantidadeDeLinhas; linha++)
            for(int coluna=0; coluna<quantidadeDeColunas; coluna++)
                matSub->setElemento(linha,coluna,this->getElemento(linha,coluna) - matriz.getElemento(linha,coluna));


        return matSub;

    } catch(int valorErro) {
        throw valorErro;
    }
    catch(std::bad_alloc&) {
        throw (0);
    }

}
开发者ID:adyjunior,项目名称:adyjrpucgo,代码行数:22,代码来源:Matriz.cpp


注:本文中的Matriz::setElemento方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。