Salut à tous,

C'est une question très simple que je me pose mais je n'ai pas trouvé de sujet relatif sur le forum pour y répondre.

En fait, j'aimerais écrire (en fortran 90) un tableau A de ni x nj éléments dans un fichier *.dat.
Je compte obtenir dans le fichier exemple1.dat les éléments de A sous forme de ni lignes et nj colonnes.
Jusque là, ça va...

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
 
(implicit none)
 
integer :: i,j
integer :: ni,nj
real (kind=8),dimension(:,:),allocatable :: A
 
.
.
.
 
open(30,file="exemple1.dat",status='unknown',form='formatted')
 
do i=1,ni
  write(30,1120) (A(i,j),j=1,nj)
enddo
 
close(30)
Dans un premier temps, imaginons que A comprenne 20 x 20 éléments, le tableau en sortie devra donc avoir 20 lignes et 20 colonnes. Pour ce faire, j'écris :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
1120 format (20(e12.5,1x))
Maintenant, comme je traite des tableaux qui n'ont pas forcément les mêmes dimensions (toujours en utilisant le même programme), comment dois-je faire pour rendre ce bout de code plus généraliste ?

J'avais essayé :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
1120 format (ni(e12.5,1x))
... mais cela renvoie une erreur :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
exemple.f90(15): error #6186: This character is not valid in format list. [n]
1120 format (ni(e12.5,1x))
-------------^
Pouvez-vous m'aider svp ?