60 lines
1.2 KiB
FortranFixed
60 lines
1.2 KiB
FortranFixed
|
|
integer function sum_(a, b)
|
||
|
|
integer a, b
|
||
|
|
sum_ = a + b
|
||
|
|
return
|
||
|
|
entry mul_(a, b)
|
||
|
|
mul_ = a * b
|
||
|
|
return
|
||
|
|
end
|
||
|
|
|
||
|
|
integer function sub_(a, b)
|
||
|
|
integer a, b
|
||
|
|
integer sum_
|
||
|
|
sub_ = a - b
|
||
|
|
if (1 .eq. 1) then
|
||
|
|
return
|
||
|
|
endif
|
||
|
|
sub_ = sum_(a, -b)
|
||
|
|
end
|
||
|
|
|
||
|
|
integer function one()
|
||
|
|
one = 1
|
||
|
|
end
|
||
|
|
|
||
|
|
integer function array_sum(a, b, n)
|
||
|
|
integer n
|
||
|
|
integer a(-1:8), b(N)
|
||
|
|
integer i
|
||
|
|
array_sum = 0
|
||
|
|
do i = 1, n
|
||
|
|
array_sum = array_sum + a(i-2) + b(i)
|
||
|
|
enddo
|
||
|
|
end
|
||
|
|
|
||
|
|
subroutine print_(a)
|
||
|
|
integer a
|
||
|
|
write(*,*)a
|
||
|
|
end
|
||
|
|
|
||
|
|
program main
|
||
|
|
implicit none
|
||
|
|
integer a, b, res, i, s
|
||
|
|
integer sum_, sub_, mul_, one, array_sum
|
||
|
|
integer array1(10), array2(10)
|
||
|
|
do i = 1, 10
|
||
|
|
array1(i) = i
|
||
|
|
array2(i) = i
|
||
|
|
enddo
|
||
|
|
s = array_sum(array1, array2, 10)
|
||
|
|
call print_(s)
|
||
|
|
call print_(array_sum(array1, array2, 10))
|
||
|
|
a = 1
|
||
|
|
b = a + 1
|
||
|
|
res = sum_(sum_(one(), b), mul_(1, sub_(a,b)))
|
||
|
|
if (1 .eq. one()) call print_(1)
|
||
|
|
do i = 1, one() * 5
|
||
|
|
call print_(i + one() * one())
|
||
|
|
enddo
|
||
|
|
call print_(res)
|
||
|
|
end
|