PROGRAM juuret IMPLICIT NONE COMPLEX :: a, b, c, juuri1, juuri2 WRITE (*,*) 'Anna toisen asteen yhtälön kompleksiset & &kertoimet' WRITE (*, '(A)', ADVANCE='NO') 'a: ' READ (*,*) a WRITE (*, '(A)', ADVANCE='NO') 'b: ' READ (*,*) b WRITE (*, '(A)', ADVANCE='NO') 'c: ' READ (*,*) c CALL toinenaste(a, b, c, juuri1, juuri2) WRITE (*,*) 'Juuret ovat ', juuri1, juuri2 CONTAINS SUBROUTINE toinenaste(a, b, c, j1, j2) IMPLICIT NONE COMPLEX, INTENT(IN) :: a, b, c COMPLEX, INTENT(OUT) :: j1, j2 COMPLEX :: diskr diskr = SQRT(b**2-4*a*c) j1 = (-b+diskr)/(2*a) j2 = (-b-diskr)/(2*a) END SUBROUTINE toinenaste END PROGRAM juuret