Próbuję nauczyć się pracować z funkcjami. Mam następujący kod:Funkcja nie ma domyślnego typu
program main
implicit none
write(*,*) test(4)
end program
integer function test(n)
implicit none
integer, intent(in) :: n
integer :: i, ans
ans=1
do i=1,n
ans=ans*i
enddo
test=ans
end function test
Kiedy skompilować (z gfortran 4.1.2), pojawia się następujący błąd:
In file test.f90:4
write(*,*) test(4)
1
Error: Function 'test' at (1) has no IMPLICIT type
OK, czy jest jakiś sposób, w jaki mogę napisać tę funkcję w innym pliku do ponownego wykorzystania w innych programach? – sodiumnitrate
Tak, jak napisałem * są inni *. Możesz napisać 'moduł' w innym pliku źródłowym i ponownie użyć funkcji w ten sposób. Skonsultuj się z samouczkiem Fortran. –