Rotinas para manipulação de matrizes
Publicado por Daniel Moreira dos Santos (última atualização em 01/09/2009)
[ Hits: 8.839 ]
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]; } }
Angelinux Scripts - Palpite para Megasena em C
Teste de desempenho com números primos em C (corrigido)
Os cincos primeiros termos da séries de fourier
Nenhum comentário foi encontrado.
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Desktop Linux ganha novos apps enquanto IA invade o noticiário
Blender 5.0 Beta, Firefox 144 e avanço da IA dominam o dia no mundo Linux
Desktop Linux ganha fôlego enquanto distros refinam experiência e segurança
Como mudar o nome de dispositivos Bluetooth via linha de comando
Adicionando o repositório backports no Debian 13 Trixie
PIP3 - erro ao instalar módulo do mariadb para o Python (1)
Baixar jogos Independentes para Ubuntu (3)
Linux x Plataformas de Trading - um problema (in-)solúvel? (4)