Étudions la fonction :
/* ------------------------------------ */
double **i_duplicate_mZ(
int r,
int c
)
{
r = (r-R1);
c = ((c-C1)/C2);
return( i_mZ(r,c) );
}
/* ------------------------------------ */
pow_mZ(); utilise cette fonction.
T = i_duplicate_mZ(A[R_SIZE][C0],A[C_SIZE][C0]);
En fait on initialise la taille de la matrice directement en lisant en mémoire celle-ci, au lieu d'utiliser rsize_mZ(); et csize_mZ(); simplement car cela est plus rapide.
On se rappel qu'avant de mémoriser la taille de la matrice dans la fonction i_mZ(); on ajoute la ligne zéro et la colonne zéro.
Il faut donc les retrancher avant l'appel de la fonction i_mZ(); qui va naturellement les rajouter un peu plus tard.
- (r-R1)
- (c-C1)
Cet article est issu de Wikibooks. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.