Pour le compilateur, essaye dans la ligne de commande de taper gfortran ou ifort ce sont deux compilateurs qui compilent aussi bien du F77 que du F90 qu'un mélange des deux.
Pour ce qui est de mon programme voilà quelque chose qui doit marcher en F77 :
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 program mecanique implicit none INTEGER br3,ipas,npas,nc,ifichier CHARACTER (len=3) ext real*8 rayon,sigtra c initialisation de valeurs br3=10 npas=10 nc=0 rayon =0.d0 sigtra=0.d0 c Initialisation pour le premier fichier ifichier=1 write(ext,"(i3.3)")ifichier close(br3) OPEN(br3,file="essai"//ext) write(br3,"(a)")"# ipas nc "// & " rayon sigtra" c ta boucle do ipas=1,npas c call ton truc if(mod(ipas,2) .eq. 0)then c tu écrit la dernière ligne WRITE(br3,13000) ipas,nc,rayon,sigtra c tu ouvre le nouveau fichier ifichier=ifichier+1 write(ext,"(i3.3)")ifichier close(br3) OPEN(br3,file="essai"//ext) write(br3,"(a)")"# ipas nc "// & " rayon sigtra" c tu boucle pour pas reécrire la dernière ligne sur le nouveua fichier cycle endif WRITE(br3,13000) ipas,nc,rayon,sigtra enddo 13000 FORMAT(2I10,2F20.6) end
Le reste ce sont des distributions linux si tu nous dis laquelle tu as on pourra t'indiquer comment installer gfortran si il n'est pas installer par défaut. Pour voir s'il est déjà installer tape gfortran dans un terminal.Citation:
Citation:
Il vaut mieux utiliser un compilateur Fortran90, typiquement gfortran
dans la plupart des distrib linux (RedHat, openSUSE , Debian/Ubuntu, Slackware/Zenwalk)
Je ne sais pas trop ce que sait...Fortran90 oui, mais le reste ne me dit rien.
Comme a dis grame il faut aussi que tu vérifies les arguments de ta subroutine, compare la ligne où tu l'appelle avec celle où tu la déclare
call masub(arg1,arg2,arg3)
....
subroutine masub(arg1,arg2,arg3)
arg1 arg2 et arg3 doivent être de même type ! et dans le même ordre
Tu es en stages ? ou c'est un projet que tu fais tout seul ?