c'est plus clair comme ça ?
Code:
1
2
3
4
5 k=0 do i=-M,M-1 A(:,i)=G(k:k+2*M-1) k=k+2*M end do
Version imprimable
c'est plus clair comme ça ?
Code:
1
2
3
4
5 k=0 do i=-M,M-1 A(:,i)=G(k:k+2*M-1) k=k+2*M end do
ok merci
Salut!
Avant de programmer quoi que ce soit, il faut bien comprendre ce que tu veux faire.
Tu as un tableau A à 2 indices déclaré dans une instruction
Ce tableau comporte donc 2*M lignes et 2*M colonnes (et non 2*M-1 comme tu l'as écrit jusqu'à présent). Tu veux qu'il contienne les mêmes valeurs qu'un tableau G à un seul indice déclaré dans une instructionCode:Real*8 A(-M:M-1,-M:M-1
Il y a en principe 3 manières de procéder:Code:Real*8 G(0:4*M-1)
- Tu utilises l'instruction Equivalence.
- Tu utilises l'instruction Common dans ton programme principal et dans une routine, en mettant une fois A comme paramètre, et l'autre fois G.
- Tu prends une feuille de papier où tu traces 3 colonnes, I et J étant les indices dans A, K étant l'indice dans G:
Je te laisse compléter le tableau et déterminer la formule qui permet de calculer K à partir de I et J.Code:
1
2
3
4
5
6
7
8
9
10 I J K -M -M 0 0 -M M M-1 -M 2*M-1 -M 0 ... 0 0 ... M-1 0 ... -M M-1 ... 0 M-1 ... M-1 M-1 4*M**2-1
Jean-Marc Blanc
Merci Jean Marc, mais j arrive pas a trouver la formule?
d autre part peut tu me dire comment utiliser le common ?
merci