En Fortran, una función (function
) es un bloque de código que realiza un cálculo y devuelve un valor. Las funciones son muy útiles para realizar operaciones repetitivas o cálculos específicos, y se pueden invocar en cualquier parte del programa. A diferencia de las subrutinas (subroutine
), las funciones siempre devuelven un valor que puede ser asignado a una variable o utilizado directamente en expresiones.
Una función en Fortran se define con la palabra clave function
, seguida del nombre de la función y los argumentos entre paréntesis. El valor de retorno de la función se asigna a su propio nombre, y la función termina con la palabra clave end function
.
function
:
function nombre_funcion(arg1, arg2, ...)
! Declaraciones de variables
! Cuerpo de la función
nombre_funcion = valor ! Asignación del valor de retorno
end function nombre_funcion
resultado = nombre_funcion(arg1, arg2, ...)
function
en Fortran
program ejemplo_funcion
real :: resultado
resultado = sumar(5.0, 3.0)
print *, "La suma es:", resultado
contains
function sumar(a, b)
real :: sumar
real, intent(in) :: a, b
sumar = a + b
end function sumar
end program ejemplo_funcion
Salida:
La suma es: 8.0
program cuadrado_numero
real :: num, resultado
num = 4.0
resultado = cuadrado(num)
print *, "El cuadrado de", num, "es:", resultado
contains
function cuadrado(x)
real :: cuadrado
real, intent(in) :: x
cuadrado = x * x
end function cuadrado
end program cuadrado_numero
Salida:
El cuadrado de 4.0 es: 16.0
program area_circulo
real :: radio, area
radio = 3.0
area = calcular_area(radio)
print *, "El área del círculo es:", area
contains
function calcular_area(r)
real :: calcular_area
real, intent(in) :: r
real :: pi
pi = 3.14159
calcular_area = pi * r * r
end function calcular_area
end program area_circulo
Salida:
El área del círculo es: 28.27431
function
y subroutine
Para más detalles sobre el uso de funciones en Fortran, consulta la documentación oficial de Fortran.
Jorge García
Fullstack developer