Write a program that shows the dynamic memory allocation? - FORTRAN

Write a program that shows the dynamic memory allocation?



- Dynamic memory allocation is an essential part as it makes the program more flexible and provides lots of operations to be used.

- This program doesn’t contain the DO loops and IF/THEN statements that is used to manipulating the array.

- It consists of mathematical operations that are applied on the complete system including the array and provide the coding in a structured way.

- The program is shown as:

program average

implicit none

real, dimension(:), allocatable :: points
integer :: number_of_points
real :: average_points=0., positive_average=0., negative_average=0.

write (*,*) "Input number of points to average:"
read (*,*) number_of_points

allocate (points(number_of_points))

write (*,*) "Enter the points to average:"
read (*,*) points

if (number_of_points > 0) average_points = sum(points) / number_of_points

if (count(points < 0.) > 0) then
negative_average = sum(points, points < 0.) / count(points < 0.)
end if

deallocate (points)

write (*,'(a,g12.4)') 'Average = ', average_points
Post your comment