Bonjour

Je suis débutant en Fortran.
Je voulais savoir si il est possible de retourner un tableau en fortran 77 avec une fonction.

Voici un bout de mon code :
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
program resolv
 
       double precision A(3,3)
       double precision B(3)
       double precision val(3)
       double precision lin
       double precision col
       double precision i
       double precision j
 
        A(1,1)=1.
        A(1,2)=1.
        A(1,3)=1.
       A(2,1)=2
       A(2,2)=1
       A(2,3)=-1
       A(3,1)=4
       A(3,2)=2
       A(3,3)=1
 
       B(1)=1
       B(2)=3
       B(3)=-4
 
               val=maxi(A)
 
       write(*,*) val(1), val(2), val(3)
 
       write(*,'(a,$)') 'Entrez :'
       read(*,*) 
 
       lin=val(2)
       col=val(3)
 
c       A=ChLigne(A,B,lin,col)
c       A=ChCol(A,lin,col)
 
 
 
c       
       end
c    	
 
       double precision function maxi(A)
       double precision A(3,3)
       integer i,j,k,l,col,lin
       double precision mx
       double precision val1(3)
 
       mx=A(1,1)
 
       do i=1,3
         do j=1,3
           if (DABS(A(i,j)).gt.mx) then
             mx=A(i,j)
             lin=i
             col=j
           endif
         enddo
       enddo
 
       val1(1)=mx
       val1(2)=lin
       val1(3)=col
 
       maxi=val1 return
 
       end

Je rencontre un problème ligne 35 : avec la commande val=maxi(A).
En sachant que val est un tableau double précision et que la fonction maxi renvoi un double precision, je ne vois pas pourquoi il ne veut pas prendre ma commande; est-ce que cela est dû au fait que je veux renvoyer un tableau ?? Comment faire ?
Merci d'avance