Pular para o conteúdo

Rotinas para manipulação de matrizes

Mais um algoritmo numérico para manipulação de matrizes.
Daniel Moreira dos Santos danielms
Hits: 9.007 Categoria: C/C++ Subcategoria: Miscelânea
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Mais um algoritmo numérico para manipulação de matrizes.
Download rotinas.tar Enviar nova versão

Esconder código-fonte

/*************************************************
 *   Copyright (C) 2007 by Daniel Moreira dos Santos                                               *
 *   dansabian@ig.com.br                                                                           *
 *                                                                                                 *
 *************************************************/

/*************************************************
* Muda os valores de uma coluna de uma Matriz dados os indices das linhas a modificar.
*
* Matriz* M => Matriz cujos elementos serão modificados.
* int* iprow => Vetor de inteiros que contêm os indices das p linhas que serão modificadas.
* int icol => Indice da coluna que terá suas linhas modificadas.
* float* array => Vetor de floats contendo os elementos a serem inseridos.
**************************************************/

void set_values_row(Matriz* M, int* iprow, int icol, float* array){
   int i, m;
   for(i=0; iprow[i]!=NULL; i++){
      m=iprow[i];
      M->v[m][icol]=array[i];
   }
}

/*************************************************
* Muda os valores de uma linha de uma Matriz dados os indices das colunas a modificar.
*
* Matriz* M => Matriz cujos elementos serão modificados.
* int* ipcol => Vetor de inteiros que contêm os indices das p colunas que serão modificadas.
* int irow => Indice da linha que terá suas colunas modificadas.
* float* array => Vetor de floats contendo os elementos a serem inseridos.
**************************************************/

void set_values_col(Matriz* M, int* ipcol, int irow, float* array){
   int i, m;
   for(i=0; ipcol[i]!=NULL; i++){
      m=iprow[i];
      M->v[irow][m]=array[i];
   }
}

/*************************************************
* Muda os valores de um elemento da Matriz dados os indices das colunas e das linhas a modificar.
*
* Matriz* M => Matriz cujos elementos serão modificados.
* int* iprow => Vetor de inteiros que contêm os indices das linhas dos p elementos.
* int* ipcol => Vetor de inteiros que contêm os indices das colunas dos p elementos.
* float* array => Vetor de floats contendo os elementos a serem inseridos.
**************************************************/

void set_values(Matriz* M, int* iprow, int* ipcol, float* array){
   int i, m, n;
   for(i=0; iprow[i]!=NULL; i++){
      m=iprow[i];
      n=ipcol[i];
      M->v[m][n]=array[i];
   }
}

Decomposição em fatores primos

Lotando a memória do micro

Calc Compact

A - Comando streql

ArkaPoing (arkanoid+pingpoing hehe)

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.