Rotinas para manipulação de matrizes

Publicado por Daniel Moreira dos Santos (última atualização em 01/09/2009)

[ Hits: 8.653 ]

Homepage: http://www.danielmoreira.wordpress.com

Download rotinas.tar




Mais um algoritmo numérico para manipulação de matrizes.

  



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];
   }
}

Scripts recomendados

OpenGL - Planeta em Órbita

Argv e Argc

Como verificar a validade de um CPF

Regra de Horner para cálculo do polinômio

Media de N numeros


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts