Bonjour, voici un code tout simple :
Dans le premier write je met dans le format le 1p pour avoir un chiffre avant la virgule. Jusque là rien d'anormal. Regardez la sortie fait un peu peur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 program test implicit none double precision :: a = 10.d0, b = 45.3543d12, c = 74.d0 write(*,"(F8.3,1pD16.4,F8.3)") a, b, c write(*,"(F8.3,D16.4,F8.3)") a, b, c end program test:
J'ai la même chose avec ifort et gfortran. C'est un truc écrit dans la norme ou c'est un bug de compilateur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 > a.out 10.000 4.5354D+13 740.000 10.000 0.4535D+14 74.000?
Partager