Salut,
J ai un probleme de compilation:
j ai ecrit un program en F77, et ca marche, mais sur un compilateur F90 sur mon pc ca donne erreur, alors qu est ce qu il faut rectifier?
merci
Salut,
J ai un probleme de compilation:
j ai ecrit un program en F77, et ca marche, mais sur un compilateur F90 sur mon pc ca donne erreur, alors qu est ce qu il faut rectifier?
merci
error 112,reference to undefined variable , array element or function result
Bonjour,
D'après le message d'erreur, tu utilises une variable/un élément de tableau/ une fonction non définie...
Visiblement ton compilateur 77 tolérait celà, mais pas ton compilateur 90 (ce qui est à mon gout plus sain).
As-tu pensé à utiliser un "implicit none" dans ton programme et à compiler avec un maximum d'options de diagnostiques d'erreurs?
Tu as raison, j oublies tjs le implicit none, j esseyerai et je te dirai si le probleme existe ou pas
Malheuresement le message existe toujours,
en effet il compile sans erreurs, mais dans apres, dans l affichage, ca me donne ce message
Bonjour,
j'ai le même problème, mais je n'arrive pas à le résoudre malgré tout ce qui a été écrit (j'utilise Plato de Stanford). Peut-être pourrez-vous m'aider, voici un extrait de mon programme:
Le message d'erreur indique une erreur à la ligne où j'appelle calculh, et une erreur, liée sans doute, à la ligne du calcul de h1c.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 Program Collector IMPLICIT NONE Real, dimension (3):: T,Told Real, dimension (3) :: C Real, dimension (3,3):: M ! Déclarations T(1)=295 T(2)=300 T(3)=298 L=R/n Tin=300 Do i=1,n Told=T call calculh(T,Told,h1,h2,h3,h4,h5,h6,H,Re,V) ! remplissage des matrices M et C avec les coeff h call inversion(M,C,T) Tout=2*T(2)-Tin Tin=Tout End DO end program ... SUBROUTINE calculh(T,Told,h1,h2,h3,h4,h5,h6,H,Re,V) IMPLICIT NONE real, dimension (3) :: Told,T ! autres déclarations Told=T !calcul des h dont la ligne avec l'erreur: h1c=(0.216+0.0026*Vvent*ro1*Tm1/(mu1*9.81*(Told(1)-Told(2))))**(1/3)/(mu1*Tm1/(9.81*(Told(1)-Told(2))*cp1*k1**2*ro1**2))**(1/3) end subroutine
Bon, c'est pas très clair, mais si quelqu'un a une idée, ça m'aiderait beaucoup.
Merci.
Salut Jaibo,
Il y a plein d'erreurs dans ton programme !
Si tu utilises implicit none prends garde a bien declarer toutes tes variables. Ce n'est pas le cas !
Ensuite il y a des variables qui sont utilisees mais pas definies:
n, mu1, Cp1, K1, ro1, Tm1, Vvent ...
fais attention a L =R/n si L n'est pas definie comme real tu vas avoir des soucis....
attention kan tu ecris 1/3. En fortran 1/3 =0 et non pas a 0.333333 comme tu dois t'y attendre
si tu veux 0.333333 ecris 1./3 ou 1/3. ou 1./3. tu as le choix lol
Donc avec toutes ces erreurs tu peux etre sur que ton programme ne donnera pas le resultat escompte....
Je ne suis pas sur que ton probleme soit le meme que celui precedemment evoque. Tu devrais mieux ouvrir un nouveau post....
Partager