PROGRAM Cevrim
!--------------------------------------------------------
! 07prg04.f95
! Kartezyen-polar çevrimi (iç Subroutine ile)
!--------------------------------------------------------
IMPLICIT NONE
! Prototip
INTERFACE KarPol
SUBROUTINE KartezyenPolar(X, Y, R, Teta)
REAL, INTENT(IN) :: X, Y
REAL, INTENT(OUT) :: R, Teta
END SUBROUTINE KartezyenPolar
END INTERFACE KarPol
REAL, PARAMETER :: PI = 3.141593
REAL :: X, Y, R, T
PRINT *,"Bir (x, y) koordinatı girin:"
READ *, X, Y
CALL KartezyenPolar(X, Y, R, T)
T = T * 180.0/PI ! radyanı dereceye çevir
PRINT *,"(x,y) -> (r,teta) karşılığı = ", R, T
END PROGRAM Cevrim
! Bildirim
SUBROUTINE KartezyenPolar(X, Y, R, Teta)
REAL, INTENT(IN) :: X, Y
REAL, INTENT(OUT) :: R, Teta
R = SQRT(x**2+Y**2)
Teta = ATAN(Y/X)
END SUBROUTINE