File: program4.f90

package info (click to toggle)
lfortran 0.58.0-4
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 54,512 kB
  • sloc: cpp: 162,179; f90: 68,251; python: 17,476; ansic: 6,278; yacc: 2,334; sh: 1,317; fortran: 892; makefile: 33; javascript: 15
file content (38 lines) | stat: -rw-r--r-- 674 bytes parent folder | download | duplicates (3)
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
program program4
real :: x, y, z
x = 1.0
y = 2.0

z = func1(x, y)
print *, "6.0 == ", z

z = func1(x, y)
print *, "7.0 == ", z

z = func2(x, y)
print *, "6.0 == ", z

z = func2(x, y)
print *, "8.0 == ", z
contains

function func1(a, b) result(c)
    real, intent(in) :: a, b
    real :: c
    real, save :: saved = 2.0
    saved = saved + 1.0
    c = c + a + b + saved
end function func1

function func2(a, b) result(c)
    real, intent(in) :: a, b
    real :: c
    real :: saved1 = 2.0
    real, save :: saved2
    real :: d
    saved1 = saved1 + 1.0
    c = d + c + a + b + saved1 + saved2
    saved2 = saved2 + 1.0
    d = d + 3.0
end function func2
end program program4