Ir al contenido principal

FORTRAN, un lenguaje de programación científica y en paralelo

FORTRAN (The IBM Mathematical Formula Translating System) es: un lenguaje de programación paralelo y de alto rendimiento.

Características:

  1. Procedural.
  2. Imperativo.
  3. Tipado estático y fuerte.
  4. Ideal para cálculo numérico y computación científica.
  5. De alto nivel.
  6. Portable (en la actualidad).

Al igual que Pascal y C es considerado ideal para realizar cálculos complejos y programación en paralelo.

Con el advenimiento de lenguajes como, el no tan nuevo, Python y otros más (Java, Kotlin, etc.) es preciso conocer lenguajes que se niegan a morir pues aún falta explotarlos correctamente.

Muchos no saben pero Python es muy usado actualmente por su "rapidez" a la hora de crear aplicaciones de Machine Learning.

Sin embargo, desconocen que detrás de este lenguaje están librerías hechas en C o C++ quienes hacen el trabajo duro y dejan a Python la parte más sencilla. Igualmente hay quienes emplean Python acompañado del lenguaje FORTRAN quien se hace cargo de las operaciones complejas que a Python le costaría un tiempo muy considerable en realizar.

Si usas Windows, deberás descargarlo en este sitio:

http://www.equation.com/servlet/equation.cmd?fa=fortran

Si usas Linux Ubuntu, puedes instalarlo así:

sudo apt-get install gfortran
sudo apt install build-essential
sudo apt-get install manpages-dev

Listar versión instalada:

$> gfortran --version

Empecemos con algunos ejemplos.

Ejemplo. El clásico "Hola, mundo" en FORTRAN. La extensión del programa será *.f90.

holamundo.f90

program holamundo
  ! Este es un comentario
  print *, '!Hola, mundo en Fortran!'
end program holamundo

Compilamos:

$> gfortran holamundo.f90 -o holamundo

Ejecutamos:

$> ./holamundo
!Hola, mundo en Fortran!

Ejemplo. Crear un programa que muestre los tipos básicos en Fortran.

variables.f90

program variables
  implicit none

  ! Declaración de variables
  integer :: amount
  real :: pi
  complex :: frequency
  character :: initial
  logical :: isOkay
  
  ! Asignación de valores
  amount = 233
  pi = 3.1415733
  frequency = (-534.0, 545.0)
  initial = 'A' 
  isOkay = .true.

  ! Imprimir en pantalla
  print *, 'El valor de amount (integer) es: ', amount
  print *, 'El valor de pi (real) es: ', pi
  print *, 'El valor de frequency (complex) es: ', frequency
  print *, 'El valor de initial (character) es: ', initial
  print *, 'El valor de isOkay (logical) es: ', isOkay  
  

end program variables

Salida:

 El valor de amount (integer) es:          233
 El valor de pi (real) es:    3.14157319
 El valor de frequency (complex) es:             (-534.000000,545.000000)
 El valor de initial (character) es: A
 El valor de isOkay (logical) es:  T

Ejemplo. Programa que solicite edad de una persona. Si la edad es mayor a 18 años, puede votar. Si no es mayor, no puede votar.

edad.f90

program edad
 implicit none

 ! Declaramos variable y asignamos un valor
 integer :: myEdad
 
 print *, 'Introduce tu edad: '
 read(*,*) myEdad

 print *, 'Tu edad es: ', myEdad
  
 if (myEdad > 18) then
  print *, 'Puedes votar.'
 else
  print *, 'No puedes votar.'
 end if

end program edad

Salida:

 Introduce tu edad:
42
 Tu edad es:           42
 Puedes votar.

Más en otros posts.

Enlaces:

https://fortran-lang.org/es/index

Comentarios

Entradas populares de este blog

Odin language: el lenguaje de programación orientado a datos para un desarrollo de software sensato

En esta serie sobre lenguajes de programación hablamos de Odin , un lenguaje orientado a datos. Un nuevo lenguaje de programación que nos podrá recordar a lenguajes como C++, Python, Golang o hasta Rust. Instalación (Windows): 1 2 3 4 $ git clone https://github.com/odin-lang/Odin $ cd Odin $ git pull $ build.bat release Debemos asegurarnos de crear la variable de entorno: Nombre: ODIN_HOME Valor: C:\Users\HP\Documents\pruebasOdin\Odin Ejemplo 1. Como primer programa tendremos al clásico "Hola, mundo". holamundo.odin package holamundo import " core:fmt " main : : proc ( ) { fmt . println ( " ¡Hola, mundo desde Odin! " ) } Construimos: $ odin build holamundo . odin - file Ejecutamos: $ holamundo .exe Recordar que si usamos Visual Studio Code podemos instalar el plugin de Odin Language: https://marketplace.visualstudio.com/items?itemName=DanielGavin.ols Ejemplo 2. Programa que muestre las variables que pod...

Programación Windows Batch (CMD) parte 3

Crear ciclos para efectuar operaciones tediosas nos ahorrará tiempo para realizar otras tareas. En está ocasión veremos ciclos con FOR . ¿Cuál es la síntaxis de bucle FOR en Windows Batch? Si está dentro de un archivo *.bat : FOR %%variable IN (seq) DO operaciones Si lo ejecutamos en una terminal: FOR %variable IN (seq) DO operaciones Ejemplo 1 . Recorrer una secuencia de números del 0 al 5: recorrer.bat @ echo off FOR %%i in ( 0 1 2 3 4 5 ) DO echo Hola no. %%i pause Nos imprimirá en pantalla: Hola no. 0 Hola no. 1 Hola no. 2 Hola no. 3 Hola no. 4 Hola no. 5 ¿Puedo usar contadores? Si, se pueden usar. Ejemplo 2 . Uso de contadores: contador.bat @ echo off set numeros = 1 2 3 4 5 6 7 8 9 10 set cont = 0 for %%a in ( %numeros% ) do ( echo Hola no. %%a :: Contador set /a cont+ = 1 ) echo Total: %cont% Este código nos imprimirá, además de los mensajes Hola no. 0 ..., el total de valores conta...

z/OS, ¿Qué es? y ¿Cuáles son sus herramientas?

  En este post veremos las herramientas de z/OS de IBM. z/OS es un sistema operativo de mainframe desarrollado por IBM.  Es parte de la serie IBM z Systems (anteriormente conocida como System z), que se utiliza en los sistemas mainframe de IBM. z/OS es uno de los sistemas operativos más utilizados en el mundo empresarial para ejecutar aplicaciones críticas y procesar grandes volúmenes de datos. Características clave de z/OS: Escalabilidad : z/OS es conocido por su capacidad para manejar grandes cargas de trabajo y escalabilidad vertical, lo que permite agregar recursos de hardware para satisfacer las demandas de procesamiento. Confiabilidad y disponibilidad : z/OS está diseñado para ofrecer alta disponibilidad y confiabilidad. Incorpora características como redundancia y recuperación ante fallas para garantizar la continuidad de las operaciones. Seguridad : Proporciona una amplia gama de funciones de seguridad, como autenticación, autorización y auditoría, para proteger los...