#1 Le 24/09/2017, à 18:32
- nh-ben
[Résolu]Problème Fortran: Le programme n'affiche pas toutes les valeur
Salam,
J'utilise le programme suivant qui a pour rôle de lire l'ensemble des valeurs disposées sur chaque lignes du fichier xxx, et afficher après compilation 24 valeurs (d,e,f......zz,aa) sur chaque ligne.
real a,b,c,d,e,f,g,h,ii,jj,kk,ll,mm,nn,oo,pp,qq,rr,ss,tt,uu,vv,ww,xx,yy,zz,aa
integer i
open(unit=2,status='unknown', file='xxx')
do i=1,251
read(2,*) a,b,c
read(2,*) d,e,f,g,h,ii
read(2,*) jj,kk,ll,mm,nn,oo
read(2,*) pp,qq,rr,ss,tt,uu
read(2,*) vv,ww,xx,yy,zz,aa
write(4,10) i,d,e,f,g,h,ii,jj,kk,ll,mm,nn,oo,pp,qq,rr,ss,tt,uu,vv,ww,xx,yy,zz,aa
10 format(3x,i3,3x,200(f12.2,4x))
end do
end
Le problème qui se pose c'est que après l’exécution du prgrm, il n'affiche que 17 valeurs sur chaque ligne!!!!! Je ne sais pas pourquoi les autres valeurs (uu,vv........zz,aa) ne s'affichent pas.
Modération : merci à l'avenir d'utiliser les balises code (explications ici).
Dernière modification par cqfd93 (Le 25/09/2017, à 08:28)
Hors ligne
#2 Le 24/09/2017, à 19:40
- pingouinux
Re : [Résolu]Problème Fortran: Le programme n'affiche pas toutes les valeur
Bonsoir,
Merci d'utiliser les balises-code <> pour afficher les programmes ou les retours de commandes.
Comment s'appelle le fichier ?
Comment le compiles-tu ?
Quelques remarques :
- Chaque read lit une nouvelle ligne du fichier
- Je pense aussi à la longueur des lignes du programme, qui pourraient être limitées (72 caractères par exemple en fortran77)
Tu peux aussi montrer quelques lignes du fichier xxx.
Hors ligne
#3 Le 25/09/2017, à 06:07
- nh-ben
Re : [Résolu]Problème Fortran: Le programme n'affiche pas toutes les valeur
Salam,
Merci pour votre réponse.
Le fichier s'appel re.for.
Sinon pour le compiler j'utilise la commande gfortran re.for sous linux .
Le fichier xxx est le suivant:
0.000000 0.000000 0.000000
-17.1825 -16.9289 0.0000 0.0000 0.0000 43.1817
43.2026 58.4125 58.4210 157.3068 184.9995 248.3684
290.7467 290.8731 291.8993 422.2990 423.0522 425.1790
428.1781 429.3253 430.9963 441.3161 444.1188 461.1339
-0.006670 0.011550 0.000000
-16.9398 -15.7437 1.6003 3.6927 8.4766 43.3747
43.9155 58.5353 58.9159 157.2739 184.9673 248.2950
290.5744 290.8827 292.0469 422.2879 423.0495 425.1818
428.0656 429.3613 430.9861 441.2290 444.2693 461.1478
-0.013330 0.023090 0.000000
-16.2001 -12.0170 6.2854 7.6528 16.2652 43.9512
45.9692 58.9044 60.3641 157.1784 184.8736 248.0764
290.1858 290.9117 292.3612 422.2553 423.0400 425.1890
427.7694 429.4317 430.9568 441.0172 444.6685 461.1898
-0.020000 0.034640 0.000000
-14.9696 -3.5645 10.3407 12.5512 24.3447 44.9039
49.1549 59.5242 62.6731 157.0301 184.7255 247.7171
289.6983 290.9608 292.7253 422.2022 423.0191 425.1961
427.3511 429.4860 430.9115 440.7624 445.2273 461.2608
-0.026670 0.046190 0.000000
-13.2464 10.0585 14.3899 18.6754 32.4681 46.2208
53.1909 60.4092 65.7062 156.8458 184.5357 247.2249
289.1464 291.0307 293.1048 422.1286 422.9796 425.1941
426.8566 429.5009 430.8557 440.5162 445.8810 461.3621
Concernant la longueur des lignes qui se limite à 72 caractères sur fortran77, est ce qu'il n y a pas moyen de l'étendre?.
Dernière modification par nh-ben (Le 25/09/2017, à 06:11)
Hors ligne
#4 Le 25/09/2017, à 06:24
- pingouinux
Re : [Résolu]Problème Fortran: Le programme n'affiche pas toutes les valeur
Je n'arrive même pas à compiler le programme tel que tu le montres en #1.
Essaye de le renommer : re.for -> re.f90
Hors ligne
#5 Le 25/09/2017, à 06:40
- nh-ben
Re : [Résolu]Problème Fortran: Le programme n'affiche pas toutes les valeur
Chapeaux bas! le problème s'est résolu. merci infiniment.
J'ai renommer le fichier en re.f90 et sa a marché. d'après ce que j'ai compris, le problème était due au nombre de caractère limité sur fortran77!!!!
Hors ligne
#6 Le 25/09/2017, à 06:59
- pingouinux
Re : [Résolu]Problème Fortran: Le programme n'affiche pas toutes les valeur
Il existe des options de gfortran pour indiquer le format du fichier, mais le format par défaut dépend de l'extension du nom du fichier.
Si c'est bon, n'oublie pas de modifier ton premier message, et d'ajouter [Résolu] dans le titre de la discussion.
Hors ligne