Bonjour, j'ai un programme utilisant une subroutine qui fonctionne. J'aimerais la transformer en fonction pour pouvoir stocker le résultat dans une variable. Le programme modifie juste une matrice A. La structure du code est la suivante :


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
 
program  phonetransport
implicit none
complex :: A(2,2)
 
A=...
 
call change(2,2,A,-1)
 
end program phonetransport
 
 
  subroutine change(N,M,CP,IS)
    implicit none
    integer :: N,M,IS,i1,i2
    complex :: CP(n1,n2)
 
    do i2= 1,n2
     ....
    end do
 
    do i1= 1,n1
    ...
    end do
   print*,ABS(cp)
    return
 
  end subroutine change
Dans le subroutine, la matrice CP est modifiée. J'utilise alors la fonction print pour la visualiser. Comment transformer ma subroutine en function ?