En este tema, aprenderemos sobre los operadores y las expresiones en Fortran. Los operadores son símbolos que indican a la computadora que realice operaciones específicas sobre uno o más operandos. Las expresiones son combinaciones de variables, constantes y operadores que se evalúan para producir un valor.
Tipos de Operadores
Fortran soporta varios tipos de operadores, que se pueden clasificar en las siguientes categorías:
- Operadores Aritméticos
- Operadores Relacionales
- Operadores Lógicos
- Operadores de Asignación
- Operadores Aritméticos
Los operadores aritméticos se utilizan para realizar operaciones matemáticas básicas. A continuación se muestra una tabla con los operadores aritméticos disponibles en Fortran:
| Operador | Descripción | Ejemplo |
|---|---|---|
+ |
Suma | A + B |
- |
Resta | A - B |
* |
Multiplicación | A * B |
/ |
División | A / B |
** |
Exponenciación | A ** B |
Ejemplo de Operadores Aritméticos
PROGRAM Aritmetica
IMPLICIT NONE
INTEGER :: a, b, suma, resta, producto
REAL :: division, potencia
! Asignación de valores
a = 10
b = 3
! Operaciones aritméticas
suma = a + b
resta = a - b
producto = a * b
division = a / b
potencia = a ** b
! Imprimir resultados
PRINT *, 'Suma: ', suma
PRINT *, 'Resta: ', resta
PRINT *, 'Producto: ', producto
PRINT *, 'Division: ', division
PRINT *, 'Potencia: ', potencia
END PROGRAM Aritmetica
- Operadores Relacionales
Los operadores relacionales se utilizan para comparar dos valores. El resultado de una operación relacional es un valor lógico (.TRUE. o .FALSE.). A continuación se muestra una tabla con los operadores relacionales disponibles en Fortran:
| Operador | Descripción | Ejemplo |
|---|---|---|
== |
Igual a | A == B |
/= |
Distinto de | A /= B |
> |
Mayor que | A > B |
< |
Menor que | A < B |
>= |
Mayor o igual que | A >= B |
<= |
Menor o igual que | A <= B |
Ejemplo de Operadores Relacionales
PROGRAM Relacionales
IMPLICIT NONE
INTEGER :: a, b
LOGICAL :: resultado
! Asignación de valores
a = 10
b = 3
! Operaciones relacionales
resultado = a == b
PRINT *, 'a == b: ', resultado
resultado = a /= b
PRINT *, 'a /= b: ', resultado
resultado = a > b
PRINT *, 'a > b: ', resultado
resultado = a < b
PRINT *, 'a < b: ', resultado
resultado = a >= b
PRINT *, 'a >= b: ', resultado
resultado = a <= b
PRINT *, 'a <= b: ', resultado
END PROGRAM Relacionales
- Operadores Lógicos
Los operadores lógicos se utilizan para combinar o invertir valores lógicos. A continuación se muestra una tabla con los operadores lógicos disponibles en Fortran:
| Operador | Descripción | Ejemplo |
|---|---|---|
.AND. |
Y lógico | A .AND. B |
.OR. |
O lógico | A .OR. B |
.NOT. |
Negación lógica | .NOT. A |
Ejemplo de Operadores Lógicos
PROGRAM Logicos
IMPLICIT NONE
LOGICAL :: a, b, resultado
! Asignación de valores
a = .TRUE.
b = .FALSE.
! Operaciones lógicas
resultado = a .AND. b
PRINT *, 'a .AND. b: ', resultado
resultado = a .OR. b
PRINT *, 'a .OR. b: ', resultado
resultado = .NOT. a
PRINT *, '.NOT. a: ', resultado
END PROGRAM Logicos
- Operadores de Asignación
El operador de asignación se utiliza para asignar un valor a una variable. En Fortran, el operador de asignación es =.
Ejemplo de Operador de Asignación
PROGRAM Asignacion
IMPLICIT NONE
INTEGER :: a, b
! Asignación de valores
a = 10
b = 3
PRINT *, 'Valor de a: ', a
PRINT *, 'Valor de b: ', b
END PROGRAM AsignacionEjercicios Prácticos
Ejercicio 1: Operaciones Aritméticas
Escribe un programa en Fortran que realice las siguientes operaciones aritméticas con dos números enteros ingresados por el usuario: suma, resta, multiplicación, división y exponenciación. Imprime los resultados.
Solución
PROGRAM EjercicioAritmetica
IMPLICIT NONE
INTEGER :: a, b, suma, resta, producto
REAL :: division, potencia
! Entrada de datos
PRINT *, 'Ingrese el primer número:'
READ *, a
PRINT *, 'Ingrese el segundo número:'
READ *, b
! Operaciones aritméticas
suma = a + b
resta = a - b
producto = a * b
division = a / b
potencia = a ** b
! Imprimir resultados
PRINT *, 'Suma: ', suma
PRINT *, 'Resta: ', resta
PRINT *, 'Producto: ', producto
PRINT *, 'Division: ', division
PRINT *, 'Potencia: ', potencia
END PROGRAM EjercicioAritmeticaEjercicio 2: Comparaciones Relacionales
Escribe un programa en Fortran que compare dos números enteros ingresados por el usuario utilizando todos los operadores relacionales y muestre los resultados.
Solución
PROGRAM EjercicioRelacionales
IMPLICIT NONE
INTEGER :: a, b
LOGICAL :: resultado
! Entrada de datos
PRINT *, 'Ingrese el primer número:'
READ *, a
PRINT *, 'Ingrese el segundo número:'
READ *, b
! Operaciones relacionales
resultado = a == b
PRINT *, 'a == b: ', resultado
resultado = a /= b
PRINT *, 'a /= b: ', resultado
resultado = a > b
PRINT *, 'a > b: ', resultado
resultado = a < b
PRINT *, 'a < b: ', resultado
resultado = a >= b
PRINT *, 'a >= b: ', resultado
resultado = a <= b
PRINT *, 'a <= b: ', resultado
END PROGRAM EjercicioRelacionalesEjercicio 3: Operaciones Lógicas
Escribe un programa en Fortran que tome dos valores lógicos ingresados por el usuario y realice operaciones lógicas (.AND., .OR., .NOT.) con ellos. Imprime los resultados.
Solución
PROGRAM EjercicioLogicos
IMPLICIT NONE
LOGICAL :: a, b, resultado
! Entrada de datos
PRINT *, 'Ingrese el primer valor lógico (.TRUE. o .FALSE.):'
READ *, a
PRINT *, 'Ingrese el segundo valor lógico (.TRUE. o .FALSE.):'
READ *, b
! Operaciones lógicas
resultado = a .AND. b
PRINT *, 'a .AND. b: ', resultado
resultado = a .OR. b
PRINT *, 'a .OR. b: ', resultado
resultado = .NOT. a
PRINT *, '.NOT. a: ', resultado
END PROGRAM EjercicioLogicosConclusión
En esta sección, hemos aprendido sobre los diferentes tipos de operadores en Fortran y cómo utilizarlos en expresiones. Hemos cubierto operadores aritméticos, relacionales, lógicos y de asignación, y hemos visto ejemplos prácticos de cada uno. Además, hemos proporcionado ejercicios prácticos para reforzar los conceptos aprendidos. En la próxima sección, exploraremos la entrada y salida en Fortran.
Curso de Programación en Fortran
Módulo 1: Introducción a Fortran
- Introducción a Fortran
- Configuración del Entorno de Desarrollo
- Sintaxis y Estructura Básica
- Escribiendo tu Primer Programa en Fortran
Módulo 2: Conceptos Básicos
- Variables y Tipos de Datos
- Operadores y Expresiones
- Entrada y Salida
- Estructuras de Control: Sentencias If
- Estructuras de Control: Bucles
Módulo 3: Arreglos y Cadenas
- Introducción a los Arreglos
- Arreglos Multidimensionales
- Manejo de Cadenas
- Operaciones con Arreglos y Cadenas
Módulo 4: Procedimientos y Funciones
Módulo 5: Estructuras de Datos Avanzadas
Módulo 6: Manejo de Archivos
- Lectura de Archivos
- Escritura de Archivos
- Posicionamiento de Archivos
- Operaciones con Archivos Binarios
Módulo 7: Temas Avanzados
Módulo 8: Mejores Prácticas y Optimización
- Técnicas de Optimización de Código
- Depuración y Perfilado
- Escribiendo Código Mantenible
- Estándares y Portabilidad de Fortran
