Rotinas para manipulação de matrizes
Publicado por Daniel Moreira dos Santos (última atualização em 01/09/2009)
[ Hits: 8.882 ]
Homepage: http://www.danielmoreira.wordpress.com
Mais um algoritmo numérico para manipulação de matrizes.
/*************************************************
* 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];
}
}
Matrizes esparsas, produto por escalar e produto por um vetor
Regra de Horner para cálculo do polinômio
Conversor decimal para binario para GNU/LINUX
Determinando a posicão de ocorrencia de uma string em outra
Cálculo de divisores de um número.
Nenhum comentário foi encontrado.
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Instalando partes faltantes do Plasma 6
Adicionar botão "mostrar área de trabalho" no Zorin OS
Como montar um servidor de backup no linux
Pendrive Bootable [RESOLVIDO] (5)
Desenvolvi um programa de hot corner (você colocar o mouse nos cantos)... (3)









