31 lines
728 B
Fortran
31 lines
728 B
Fortran
program pure_and_elemental_exercise
|
|
implicit none
|
|
|
|
integer, parameter :: PRIMES(*) = [2, 3, 5, 7, 11]
|
|
integer, parameter :: REAL_ANSWER = 1872
|
|
integer :: answer
|
|
|
|
! Replace '42' with an expression using elemental functions
|
|
! that calculates the equivalent of the following:
|
|
! answer = 0
|
|
! do i = 1, size(PRIMES)
|
|
! answer = answer + (primes(i) * 3)**2
|
|
! end do
|
|
answer = sum(function_(primes))
|
|
|
|
if (answer == REAL_ANSWER) then
|
|
print *, "You got it! :)"
|
|
else
|
|
print *, answer
|
|
print *, "Not passing yet :("
|
|
end if
|
|
contains
|
|
! put your functions down here
|
|
elemental function function_(primes_) result(resu)
|
|
integer, intent(in) :: primes_
|
|
integer :: resu
|
|
|
|
resu = (primes_ * 3)**2
|
|
end function
|
|
end program
|