[Fortran77] Problèmes de boucle et end of file
Bonjour,
tout d'abord je débute en fortran. Je compile avec g77 sous windows xp.
J'ai un petit probleme en compilant une subroutine : a la compilation, j'obtient ce message :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
arretes.f:50:
20 CONTINUE
^
Non-numeric character at (^) in label field [info -f g77 M LEX]
arretes.f:28:
DO 20,j=1,(ny-3)
1
arretes.f:52: (continued):
end subroutine arretes
2
Statement at (2) invalid in context established by statement at (1)
arretes.f:28:
DO 20,j=1,(ny-3)
^
End of source file before end of block started at (^) |
Si je comprends bien, cela veut dire qu'il atteint la fin du fichier alors que la boucle n'est pas "finie".
J'ai beau chercher, je ne vois pas ou est le problème. Si quelqu'un pouvit m'aider ... :)
le code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
subroutine arretes(tab,nx,ny)
IMPLICIT NONE
INTEGER i, j, k, nx, ny
INTEGER tab(*)
c 1ere ligne
c 1er element
k = 1
tab(k) = 1
tab(k+1) = 0
tab(k+2) = 0
tab(k+3) = 1
k = k + 4
c tous autres elements sauf le dernier
DO 10,i=1,(nx-3)
tab(k) = 1
tab(k+1) = 0
tab(k+2) = 0
tab(k+3) = 0
k = k + 4
10 CONTINUE
c dernier element
tab(k) = 1
tab(k+1) = 1
tab(k+2) = 0
tab(k+3) = 0
k = k + 4
DO 20,j=1,(ny-3)
c jeme ligne
c 1er element
tab(k) = 1
tab(k+1) = 0
tab(k+2) = 0
tab(k+3) = 0
k = k + 4
c autres elements
DO 15,i=1,(nx-3)
tab(k) = 0
tab(k+1) = 0
tab(k+2) = 0
tab(k+3) = 0
k = k + 4
15 CONTINUE
c dernier element
tab(k) = 0
tab(k+1) = 1
tab(k+2) = 0
tab(k+3) = 0
k = k + 4
20 CONTINUE
end subroutine arretes |